Как сделать так, чтобы данные в таблице сохранялись даже после удаления контейнеров?
Моя цель - сохранить данные даже после удаления и восстановления контейнеров. Точнее, я хочу сохранить данные даже после выполнения команд типа "docker-comand down" или "docker-comand up -d --build". Мое окружение
<Docker Django PostgreSQL Nginx Gunicorn
version: '3.8'
services:
web:
build:
context: ./app
dockerfile: Dockerfile.prod
command: gunicorn ecap.wsgi:application --bind 0.0.0.0:8000
volumes:
- static_volume:/home/app/web/staticfiles
- media_volume:/home/app/web/mediafiles
expose:
- 8000
env_file:
- ./.env.prod
depends_on:
- db
db:
image: postgres:13.0-alpine
volumes:
- db_data:/var/lib/postgresql/data/
env_file:
- ./.env.prod.db
nginx:
build: ./nginx
volumes:
- ./static_volume:/home/app/web/staticfiles
- ./media_volume:/home/app/web/mediafiles
ports:
- 80
depends_on:
- web
volumes:
db_data:
static_volume:
media_volume:
Я предполагаю, что проблема в том, как записать тома в файл yml. Хотя я следовал показанному пути, я не могу сохранить данные.
Проблема заключается в файле entrypoint.sh.
В файле есть код python manage.py flush --no-input
.
Когда я удалил этот код, данные могут сохраняться.