Я использую файл docker-compose.yml для сборки 3 контейнеров докеров для моего django nginx postgresql и чистого контейнера данных.docker-compose для чистого контейнера данных и веб-сервера, postgresql
Вот мой докер-compose.yml
data:
# pure data container
image: busybox
volumes:
- /etc/postgresql
- /var/log/postgresql:/var/log/postgresql
- /var/lib/postgresql
- /var/log/nginx:/var/log/nginx
- /var/log/supervisor:/var/log/supervisor
db:
image: postgres
volumes_from:
- data
web:
build: .
ports:
- "80:80"
- "443:443"
links:
- db
volumes_from:
- data
$docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
cc26b3a72a02 myweb_web:latest "supervisord -n" 6 minutes ago Up 6 minutes 0.0.0.0:80->80/tcp, 0.0.0.0:443->443/tcp myweb_web_1
14763a9f68d1 postgres:latest "/docker-entrypoint. 6 minutes ago Up 6 minutes 5432/tcp myweb_db_1
37598892038b busybox:latest "/bin/sh" 6 minutes ago Exited (0) 6 minutes ago myweb_data_1
У меня есть опасения о том, как резервное копирование и восстановление данных, хранящихся в PostgreSQL чистом контейнере данных (myweb_data_1). Я использую "docker-compose build & & docker-compose up" команда для восстановления изображений докеров и перезапуска контейнеров, если я обновляю коды, но не уверен, что это правильно или лучший способ сделать это.