У меня есть пример приложения django, который я пытаюсь запустить и запустить с помощью докеры.docker-compose - миграция базы данных и другие сценарии pre/post
docker-compose up
поднимает сеть, db и другие контейнеры вместе со связями между ними. Но есть до и после сценариев, которые могут понадобиться для запуска ..
пример предварительных сценариев в моем сценарии:
git
pip
docker
docker-compose
wget
например, пост-скриптов:
базы данных миграции, обычно выполняемые вручную с использованием docker run web...
после запуска контейнеров.
В настоящее время у меня есть deploy.sh в корне приложения, которое следует логике, как это .. (я выбрал Ubuntu изображение при запуске)
#assuming I always choose ubuntu base image
sudo apt-get install x
sudo apt-get install y
sudo apt-get install z
docker-compose build .; docker-compose up -d;
docker-compose run web "python manage.py makemigrations"
Мои вопросы:
1), что является лучший способ запускать эти команды?
2) Проводятся ли миграции баз данных каждый раз при развертывании (с нуля?) - или эта проблема заботится об объемах?