Jeer
@Jeer
уверенный пользователь

Как все делают деплой из git hub actions?

Всем привет,
Занимаюсь темой ci/cd через github actions.
В туториалах примерно такая схема:
  • делаем джобу
  • внутри делаем чекаут
  • билдим приложение
  • упаковываем в докер
  • и загружаем в докер хаб


С этим я разобрался, но непонятно, что же дальше? Что с публикацией?
Допустим, у меня есть какая-то vps/vds, я могу на ней поднять докер, базу, nginx и что там еще душе моей будет угодно. Но тут получается, что после сборки в gha мне нужно руками залезать на этот мой сервер, скачивать нужную сборку руками и перезапускать контейнер. Это как-то не круто
Я видел решения, которые отслеживают изменения в докер хабе и обновляют сервер. Но это не очень подходит, далеко не всё надо выкладывать на сервер и ставить какую-то определенную сборку все равно надо руками.

То есть все сводится к тому, что нужно еще дополнительно писать какую-то самопальную приблуду с каким-либо интерфейсом, которая будет работать с апи докера, получать список образов и хранить какие-то запуски: кто, когда, на какой стенд (dev, stage, prod) и какую сборку публиковал. Такие может уже существуют?
Либо, наверно самый удобный вариант, как было бы в идеале, это чтобы после того, как github action с билдом отработает, чтобы прям в нем же дальше можно было указать, на какой сервер и нажать кнопку "опубликовать" - такое возможно сделать?

Или расскажите, как сделано у вас или как делают нормальные ребята?
  • Вопрос задан
  • 414 просмотров
Пригласить эксперта
Ответы на вопрос 2
@vitaly_il1
DevOps Consulting
В туториалах примерно такая схема

Это часть которая называется CI.
Что касается CD - зависит от того что бежит на сервере. Если K8S - есть варианты, включая GitOps c ArgoCD и т.п.
Если AWS ECS - деплой через AWS.
Если "просто VPS с докер" - через ssh запускаем команду на обновление image, рестарт и т.п.
В git hub actions будет история деплоев.
Ответ написан
Комментировать
chupasaurus
@chupasaurus
Сею рефлекторное, злое, временное
Runner же
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Похожие вопросы