Обновление статики в Django c Docker
в Dockerfile для Django есть команда сбора статики в процессе сборки:
RUN python manage.py collectstatic --no-input
В docker-compose директория, в которую собирается статика привязана к volume
version: '3.7'
services:
web:
build:
context: ./src
command: gunicorn myapp.wsgi:application --bind 0.0.0.0:8000
volumes:
- static_volume:/usr/src/app/static
expose:
- 8000
volumes:
static_volume:
При первом запуске этого docker-compose все нормально, статика собирается, volume создается. Но если затем в исходниках добавить что-то в статику и пересобрать заново - новые файлы в volume не добавляются. Если удалить volume и пересобрать, то статика снова соберется нормально.
Почему не добавляются новые файлы в volume?
Ответы (1 шт):
Автор решения: pnd
→ Ссылка
попробуйте обновлять каждый раз статику в компоузе
command: >
bash -c "pip install -r requirements.txt && ./manage.py migrate && ./manage.py collectstatic --noinput && \\
gunicorn src.wsgi:application --bind 0.0.0.0:8000"