mirror of
https://github.com/thecyberlearn/modern-django-starter.git
synced 2026-08-18 10:12:56 +00:00
## Issue Fixed: - Static files collection failing with permission error in Docker container - Error: `PermissionError: [Errno 13] Permission denied: '/app/staticfiles/js'` - Occurs when running `python manage.py collectstatic` in production ## Solution Applied: 1. **Enhanced Dockerfile**: - Create `/app/staticfiles` and `/app/media` directories explicitly - Set proper ownership with `chown -R django:django /app` - Ensures directories exist with correct permissions before user switch 2. **Improved entrypoint.sh**: - Added `mkdir -p` to ensure directories exist at runtime - Creates directories before attempting static files collection - Provides fallback if directories weren't created in Docker build 3. **Updated Documentation**: - Added troubleshooting section for static files permission error - Explains the fix and prevention methods ## Benefits: - ✅ Resolves Docker container permission issues - ✅ Works with non-root user (security best practice) - ✅ Handles both build-time and runtime directory creation - ✅ Maintains proper file ownership for Django operations This should resolve the collectstatic permission error in Dokploy deployment. 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
22 lines
451 B
Bash
Executable File
22 lines
451 B
Bash
Executable File
#!/bin/bash
|
|
|
|
set -e
|
|
|
|
echo "Waiting for PostgreSQL..."
|
|
sleep 5
|
|
|
|
echo "Running migrations..."
|
|
python manage.py migrate --noinput
|
|
|
|
echo "Creating default groups..."
|
|
python manage.py create_groups
|
|
|
|
echo "Setting up social applications..."
|
|
python manage.py setup_social_apps
|
|
|
|
echo "Collecting static files..."
|
|
# Ensure static directories exist with proper permissions
|
|
mkdir -p /app/staticfiles /app/media
|
|
python manage.py collectstatic --noinput
|
|
|
|
exec "$@" |