Лучший способ автоматически обновить контейнер докеров до последней версии образа из действия Github?

У меня есть сервер, на котором я развертываю многие из своих личных проектов. Эти проекты хранятся и создаются на Github и автоматически развертываются с помощью действий Github. Первоначально я сделал это через Действие по развертыванию SSH, который синхронизировал бы обновленное приложение с сервером, а затем перезапустил бы его модуль systemd. Однако я решил попробовать контейнеризировать все свои проекты для облегчения управления. Я создал частный реестр контейнеров и этот рабочий процесс который создает приложение и публикует его в частном реестре. Это все хорошо, но затем мне приходится вручную заходить на сервер и заново создавать контейнер, чтобы фактически развернуть последнюю версию. Я пытаюсь автоматизировать это с помощью действия Github.

Я знаю о Сторожевой башне, но я понимаю, что она просто периодически проверяет реестр, чтобы убедиться, что она находится в последней версии. Это не идеально для меня, потому что я хочу, чтобы контейнер обновлялся немедленно. Если у сторожевой башни есть какой-то веб-хук, который я могу использовать, чтобы намекнуть ему из Github, что изображение было обновлено, это было бы круто. Если нет или если есть лучший подход, дайте мне знать ваши идеи.

заранее спасибо

1 ответ
1

Я придумал 2 решения

1: Используйте действие appleboy/ssh, чтобы подключиться к серверу по ssh и запустить скрипт

2: Используйте функцию веб-сокета portainer

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *