Если vendor - это некое подобие виртуального окружения, которое нужно для вашего IDE и для запуска приложений внутри контейнера - то какая проблема просто иметь копию отдельно для IDE?
Поставили новый пакет при разработке у себя в IDE - добавили в composer*.json или куда там, и при следующем перезапуске контейнеров - скрипт их подтянет в контейнерах.
То есть, в каждом контейнере запускаем нужный скрипт для инициализации проекта?
да
Хм, напрашивается вопрос, а как быть, например если мне нужно создать схему в базе данных
На примере питона - контейнер с Python зависим от контейнера с базой. Поэтому стартует база - а затем стартуем скрипт в контейнере Python
В Python в стартовом скрипте запускается миграция. Если были изменения - то эти миграции применяются, при этом создается схема базы, если не было таковой. Если же все изменения в базе есть - миграция выводит соответствующее сообщение, и выполнение стартового скрипта продолжается дальше.
Наверняка в php подобный механизм тоже есть.
Игорь, я привел пример старта сервиса на Python.
Докер используют для большей переносимости. Если мы будем прикручивать скрипт снаружи - то надо учитывать тонкости среды из-под которой мы запускаем.
К тому же в вашем примере вы указываете прямым текстом пароли базы:
'exec mysql -uroot -prk3kw1UDdqOEF4L1pmNkcyQ2oL rosinter'
А это не есть хорошо. При запуске внутренних скриптов - вы просто берет пароль из данных окружения. Что позволяет вам не хранить чувствительные к безопасности данные - к примеру - в репозитории проекта.
> Обычно используют программисты, которые ничего не понимают в администрировании
Довольно спорно.
У меня порядка сотни проектов в папке. Активно работаю с порядка 10-ю. Мне с бэкграундом в 15+ лет в системном администрировании проще запускать окружение в докер-контейнерах для конкретного рабочего проекта, чем разбираться с зоопарком версий библиотек и пакетов при сопровождении всякого рода легаси-кода.
Максим Федоров, наверное потому что "python manage.py runserver" - это команда для запуска песочницы для локальной разработки, а вовсе не для деплоя проекта на сервере.
Michael La, ну если надо использовать - используйте...
Из постановки вопроса совершенно непонятна необходимость такой странной связки... - что у вас там в темплейтах, и почему их нужно рендерить именно через ноду.