Как запретить повторное создание контейнеров docker с помощью docker-compose up

Мне нужна твоя помощь!

На этой неделе я начал использовать docker, запустил все контейнеры для нового Django проекта. В этом проекте есть несколько баз данных, python, веб-сервер django + redis, celery и т.д. Все это обслуживается отдельными контейнерами docker и запускается командой docker-compose up.

Вот моя проблема: когда я набираю docker-compose up в консоли, запускаются все службы. Затем мне нужно восстановить дампы моих баз данных для каждой базы данных (это занимает около часа). Но когда я использую инструменты pycharm для docker-compose, он воссоздает некоторые контейнеры. А также воссоздает все мои базы данных postgres со ВСЕМИ МОИМИ ДАННЫМИ!

Иногда он не воссоздает контейнеры и я могу делать свою работу, но если я сделаю какое-нибудь неверное движение - то docker-compose стирает мои базы данных! Я устал их восстанавливать!

Есть ли способ защитить контейнеры от стирания, запретить воссоздание моих контейнеров postgres?

PS: Я также пытался экспортировать контейнеры postgres в .tar файл, но когда я импортирую его обратно, база данных в контейнере в порядке и импорт контейнера быстрее, чем восстановление данных из sql, но метаданные образа докера отличаются, поэтому я не могу его использовать.

Пожалуйста, подскажите мне любые идеи)

Попробуйте использовать тома для хранения данных. Тома могут сохранять данные после пересоздания контейнеров. https://docs.docker.com/storage/volumes/

Вернуться на верх