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

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

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

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

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

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

Войти через центр авторизации
Похожие вопросы
YCLIENTS Москва
от 200 000 до 350 000 ₽
Ведисофт Екатеринбург
от 25 000 ₽
ИТЦ Аусферр Магнитогорск
от 100 000 до 160 000 ₽
26 апр. 2024, в 09:18
500 руб./в час
26 апр. 2024, в 06:46
1500 руб./в час
26 апр. 2024, в 05:31
1000 руб./за проект