Подтвердить что ты не робот

Как перезапустить puma после развертывания?

Я использую Rails, Puma, Capistrano3. Я также установил gem capistrano3-puma. Я начал Puma с Puma Jungle https://github.com/puma/puma/tree/master/tools/jungle/upstart

Как перезапустить Puma во время развертывания?

4b9b3361

Ответ 1

Вы можете перезапустить вручную, используя следующую команду

bundle exec pumactl -P /home/deploy/.pids/puma.pid restart

Убедитесь, что вы указали правильный путь pid.

Ответ 2

Продукция

Если вы используете capistrano на производстве, вы можете:

cap production deploy:restart

Разработка

Если вы находитесь в среде разработки, вы можете начать поиск pid

ps aux | grep puma

Вы увидите что-то вроде этого:

user 11654  0.0 13.4 870204 137016 ?       Sl   Jul07   0:39 puma 2.13.4 (tcp://0.0.0.0:3000) [NameOfYourApp]

Число рядом с именем пользователя, в этом случае 11654 является идентификатором процесса (PID) сервера puma. Вы можете убить его вручную и перезапустить сервер. Запустите эту команду:

kill -s 15 11654

Эта команда говорит об уничтожении процесса с идентификатором 11654 с использованием сигнала SIGTERM (код 15). SIGTERM убивает процесс "любезно", закрывая все файлы, соединения, очищающие буферы и т.д.

В последний раз вы запустите эту команду:

puma -e development -p 3000 -d

Puma снова будет запущен в режиме разработки, прослушивая порт 3000, и исполнение будет демонизировано.

Ответ 3

Я столкнулся с проблемой, когда мне нужно перезапустить puma после некоторых изменений среды и не хочу полностью развертывать приложение.

Я только хотел перезапустить puma и nginx. Вот команды, которые работали для меня:

$ bundle exec cap production deploy:restart
$ bundle exec cap production puma:restart

Надеюсь, что кто-то поможет

Ответ 4

Насколько я знаю, если вы используете capistrano3-puma gem, вам не нужно перезапускать пуму явно после развертывания. Существует задача add_default_hooks, которая после развертывания puma:smart_restart.

Вы можете увидеть список задач cap -vT. Я думаю, что cap puma:restart выполнит эту работу.

Ответ 5

вы можете проверить, работает ли Puma или нет командой

ps aux | grep puma

чтобы найти ваше имя приложения и убить его kill -9 id

то вы можете начать снова