Как деплоить php приложение на множество серверов?

Есть приложение на нескольких серверах и один балансер.
Разработчики внесли правки и запушили в гит и нужно это вылить на все сервера.

Причем там нужно собрать фронт и composer install сделать. А пока это выполняется - всё отваливается. Такого не должно быть.

Как лучше поступить?
Какие инструменты используете вы?
  • Вопрос задан
  • 876 просмотров
Решения вопроса 3
Voenniy
@Voenniy
https://deployer.org
Отличный интструмент. Соберет и накатит. Написан на php
Ответ написан
@stratosmi
Сделать сборку, проверить сборку, затянуть файлы на сервер, проверить, что файлы затянуты.
И только тогда стартовать новую версию.
Для параллельного одновременного запуска на всех серверах сразу используем Nomad.
Статья про то, что именно вас интересует - надежный запуск через "двуцветный" deploy
https://www.nomadproject.io/guides/operating-a-job...
Ответ написан
Zarom
@Zarom
Мастер на все руки из жопы
Вы должны сперва выполнить сборку проекта, затем его деплой, а не наоборот. Используйте, например, ansistrano. И в таком случае будет применим и текущий вариант, т.к. лишь в последний момент будет создан линк на новое приложение.

Использование докера так же упрощает жизнь. Подумайте о внедрении его в процесс деплоя и эксплуатации.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
Deissh
@Deissh
I like Python, Node.JS, pain, bugs and my cat.
Проще всего использовать docker контейнеры которые будут собираться в pipeline и пушиться в docker registry. А после можно разворачивать либо на k8s или docker swarm кластере без простоя.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
MAG Development Москва
от 150 000 до 200 000 руб.
RUVOD Москва
До 150 000 руб.