вопрос….. Но перелопатив огромное количество документации обращаюсь к Вам, может кто поделиться опытом касаемо разворота полноценной CI / СD для PHP проектов а именно Laravel, Symfony.
Хочу понять, насколько верно я понимаю мат часть и собственно, делаю конфигурацию.
Вводные:
Есть TeamCity в качестве CI/CD, есть docker registry приватный, есть GitlabCE (но его CI не юзается) , разворот в SWARM
Что пытаюсь сделать:
Банальный разворот проекта из гита со сборкой ассетов через GULP/Node, composer install
Сама настройка
Делаю конфигурацию DockerImage для «webapp», который наследую от php-fpm7.3, внутри него делаю Multi Stage Build по этапам
1. Сборка всех зависимостей системы
2. Установка вендоров
3. Установка нод зависимостей (для Симфони как минимум обязателен WebPack)
Последним этапом будет непосредственно сборка сурсов, сами вендоры и node_modules перекидываю с предыдущих слоев путем COPY
И вот дальше запара получается, если исходники на NFS шаре, то они подключаются кака Volume и соответственно в сборке образов не участвуют, соответственно подключаются в момент старта Docker Stack (Compose) и благополучно перестирают vendor директорию и node_modules.
Правильно ли я понимаю, что за сборку одного приложения, в данном случае Symfony проекта должен отвечать один контейнер и не нужно его делить на контейнер ноды и php допустим ?
Как происходит подмена образа в Docker Compose файле, ведь на сколько я понимаю прочитать параметры из ENV системы он не может только из .env файла… Его перезаписывать при теплое?
у вас не должно быть "если". Или файлы всегда на волуме, или всегда в имедже
Обсуждают сегодня