TGViewer
Библиотека пхпшника | PHP, Laravel, Symfony, CodeIgniter Библиотека пхпшника | PHP, Laravel, Symfony, CodeIgniter @phpproglib · 10.5K subscribers
Post #4287 2.79K
Как использовать GitHub Actions для развертывания на несколько серверов

Здесь описывается процесс создания и настройки рабочего процесса (workflow) с использованием GitHub Actions для непрерывной доставки (continuous delivery) веб-приложения, в данном случае Laravel, на несколько серверов без простоев. Вот краткое изложение основных шагов и концепций, описанных в статье:

1️⃣Создание артефактов сборки: Задача этого шага — создать архив с кодом, готовым к развёртыванию на продакшен серверы. Включает в себя установку зависимостей NPM, компиляцию CSS и JavaScript, установку зависимостей Composer, архивирование сборки и хранение артефакта для последующего развёртывания.

2️⃣Подготовка релиза на всех серверах: Этот шаг гарантирует, что развёртывание на всех серверах будет стабильным и надёжным. Включает в себя создание директорий для хранения всех релизов, распаковку сборки на сервере, выполнение необходимых действий до развёртывания (before hooks) и активацию релиза.

3️⃣Выполнение необходимых действий перед развёртыванием (before hooks): Опциональный шаг, который позволяет выполнить определённые команды перед активацией нового релиза, такие как миграции базы данных.

4️⃣Активация релиза: Самый важный шаг, который активирует новый релиз без простоев. Включает в себя установку необходимых символических ссылок, перезагрузку PHP FPM и другие необходимые действия для обновления приложения.

5️⃣Выполнение необходимых действий после развёртывания (after hooks): Опциональный шаг, аналогичный before hooks, но выполняется после активации релиза.

6️⃣Очистка: Завершающий шаг, который удаляет устаревшие релизы и артефакты, чтобы освободить место на сервере.
  • 👍 4
More from @phpproglib
  1. Oct 2, 2026🎹 Что делать после ChatGPT? Следующий шаг — AI-агенты. Они не просто отвечают на запросы,…
  2. Sep 30, 2026🔥 Последний день для разработчиков AI уже пишет код. Теперь важнее научиться встраивать е…
  3. Sep 30, 2026🐸 Библиотека пхпшника
  4. Sep 29, 2026💡 Laravel-фича, которая спасает тесты от случайных запросов Http::preventStrayRequests()…
  5. Sep 28, 2026🔐 ramsey/uuid — UUID без самописного кода Библиотека помогает генерировать, парсить и вал…
  6. Sep 28, 2026🤔 Что выведет код? ❤️ — 1 🔥 — 2 👍 — 12 👾 — Fatal error 👇 Правильный ответ (нажми, что…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →