#django #docker #docker-compose
Вопрос:
У меня есть веб-сайт Django, работающий в образе docker на моем сервере, мне нужно обновить мои статические файлы, ничего больше не меняя, могу ли я запустить файл dockerfile только с помощью этой команды или сделать docker exec COMMAND
для этого? Какова наилучшая практика в этом случае? Если я снова запущу свой файл dockerfile, все шаги будут в кэш-памяти, и если я включу опцию без кэша, я боюсь, что он снова перезапишет мой том мультимедиа, где у меня есть изображения пользователей. Я думаю, что однажды пробовал обходиться без кэша, но он не обновил мой объем статических файлов.
RUN python manage.py collectstatic --no-input --clear
Это та команда, которую, я думаю, мне нужно выполнить, но я не уверен, что она работает.
Комментарии:
1. Где задействован объем; как вы запускаете контейнер? Если вы скрываете содержимое изображения с томом, (старое) содержимое тома всегда будет иметь приоритет при запуске контейнера, даже если базовое изображение обновляется.
2. Я использую docker-compose, и у меня есть объем для моих статических файлов, ваш комментарий многое объясняет, может быть, мне нужно удалить объем статических файлов и запустить снова?