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

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

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

Как лучше поступить?
Какие инструменты используете вы?
  • Вопрос задан
  • 771 просмотр
Решения вопроса 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 кластере без простоя.
Ответ написан
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы
от 60 000 до 200 000 руб.
МегаФон Екатеринбург
от 100 000 руб.
8BIT GROUP Москва
от 150 000 до 200 000 руб.
22 марта 2019, в 15:07
2000 руб./за проект
22 марта 2019, в 15:02
200 руб./за проект
22 марта 2019, в 14:52
20000 руб./за проект