Уведомления
Очистить всё

Kamal 2 или Capistrano для клиента с одним VPS

7 Сообщения
5 Пользователи
7 Реакции
734 Просмотры
vova64
Сообщения: 23
Автор темы
Собрал свой gem фрилансер
Присоединился: 4 года назад
[#59]

Вышел Rails 8, и в новом приложении по умолчанию Kamal 2. У меня шесть клиентов на Capistrano, всё работает годами: один VPS, Puma под systemd, nginx, MySQL на том же сервере. Новый клиент из Всеволожска как раз стартует на 8.0, и я думаю, тащить ему Capistrano по привычке или переходить на Kamal. Кто уже переводил что-то маленькое, есть смысл для одного сервера?


6 ответов
armen_pet
Сообщения: 30
Собрал свой gem DevOps-инженер
Присоединился: 4 года назад

Для одного сервера Kamal хорош тем, что сервер становится одноразовым: поставили Docker, а всё, что нужно приложению, описано в репозитории. Через три года клиент переезжает к другому хостеру, и вы поднимаете всё за вечер, а не вспоминаете, какие пакеты ставили и какой версии был ruby-build. Деплой без простоя из коробки. Минусы: нужен registry для образов, сборка образа дольше, чем git pull, и клиенту, который сам заходит на сервер, Docker будет непонятнее.


Ответ
Илья50
Сообщения: 6
Дружит с bundler фрилансер
Присоединился: 4 года назад

Я на Capistrano остался. Клиенту важнее, чтобы любой фрилансер после меня разобрался, а Capistrano знают все


Ответ
1 ответ
kostya.sokurov
Присоединился: 4 года назад

Держит прод бэкенд-разработчик, senior
Сообщения: 73

Автор: Илья50
Capistrano знают все

Все, кто начинал до Rails 8. Те, кто придёт через пару лет, будут знать Kamal, потому что он идёт в новом приложении из коробки. Я бы новый проект делал на том, что предлагает фреймворк, а старые не трогал, пока не надо переезжать.


Ответ
vova64
Сообщения: 23
Автор темы
Собрал свой gem фрилансер
Присоединился: 4 года назад

Попробовал Kamal 2 на новом клиенте. VPS на 4 ГБ, образ собирается в CI и кладётся в registry, на сервере только Docker. MySQL как accessory, бэкап кроном на хосте. Первый деплой вместе с настройкой занял полдня, из них два часа я разбирался, почему образ, собранный на ноутбуке с ARM, не запускается на x86. Решил через builder: arch: amd64 и сборку в CI. Дальше деплой 2-3 минуты, откат на прошлую версию через kamal rollback за 20 секунд, проверил специально. Старых клиентов оставляю на Capistrano, переводить буду только при переезде на новый сервер. В оценку новому клиенту заложил на 4 часа больше обычного, примерно столько и ушло.


Ответ
2 ответа
gena39
Присоединился: 3 года назад

Пишет в irb SRE
Сообщения: 3

registry какой взяли, свой или у хостера? свой для одного клиента тоже надо поддерживать


Ответ
vova64
Присоединился: 4 года назад

Собрал свой gem фрилансер
Сообщения: 23

У того же хостера, что и VPS, рублей 200 в месяц на таком объёме. Свой поднимать ради одного клиента не стал.


Ответ