Some checks failed
Deploy / deploy (push) Has been cancelled
Full-stack web application for Telegram management - Frontend: Vue 3 + Vben Admin - Backend: NestJS - Features: User management, group broadcast, statistics 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
52 lines
1.4 KiB
Bash
Executable File
52 lines
1.4 KiB
Bash
Executable File
#!/bin/bash
|
|
|
|
# Fix permissions for all services
|
|
# This script updates Dockerfiles to ensure proper permissions
|
|
|
|
echo "Fixing permissions in Dockerfiles..."
|
|
|
|
# Function to add logs directory creation to Dockerfile
|
|
fix_dockerfile() {
|
|
local service=$1
|
|
local dockerfile="services/$service/Dockerfile"
|
|
|
|
if [ -f "$dockerfile" ]; then
|
|
echo "Fixing $dockerfile..."
|
|
|
|
# Check if logs directory creation already exists
|
|
if ! grep -q "RUN mkdir -p logs" "$dockerfile"; then
|
|
# Add logs directory creation before the last RUN command
|
|
sed -i '' '/RUN adduser -S nodejs -u 1001/a\
|
|
\
|
|
# Create logs directory with proper permissions\
|
|
RUN mkdir -p logs && chown -R nodejs:nodejs logs' "$dockerfile"
|
|
fi
|
|
|
|
# Check if USER nodejs is set
|
|
if ! grep -q "USER nodejs" "$dockerfile"; then
|
|
# Add USER nodejs at the end before CMD
|
|
echo "" >> "$dockerfile"
|
|
echo "# Switch to non-root user" >> "$dockerfile"
|
|
echo "USER nodejs" >> "$dockerfile"
|
|
fi
|
|
fi
|
|
}
|
|
|
|
# Fix all service Dockerfiles
|
|
services=(
|
|
"api-gateway"
|
|
"orchestrator"
|
|
"claude-agent"
|
|
"gramjs-adapter"
|
|
"safety-guard"
|
|
"analytics"
|
|
"compliance-guard"
|
|
"ab-testing"
|
|
)
|
|
|
|
for service in "${services[@]}"; do
|
|
fix_dockerfile "$service"
|
|
done
|
|
|
|
echo "Permissions fixed! Now rebuild the services:"
|
|
echo "docker-compose build" |