【问题标题】:How to restart puma after deploy?部署后如何重启 puma?
【发布时间】:2015-06-15 08:08:29
【问题描述】:

我正在使用 Rails、Puma、Capistrano3。我也安装了 gem capistrano3-puma。我和 Puma Jungle 一起创立了 Puma https://github.com/puma/puma/tree/master/tools/jungle/upstart

如何在部署期间重启 Puma?

【问题讨论】:

  • cap production puma:restart 因为阶段是必需的。

标签: ruby-on-rails deployment capistrano3 puma


【解决方案1】:
cap production puma:stop
cap production puma:start

cap production puma:restart

【讨论】:

    【解决方案2】:

    我遇到了一些环境更改后需要重新启动 puma 并且不想完全部署应用程序的问题。

    我只想重启 puma 和 nginx。以下是对我有用的命令:

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

    希望对某人有所帮助

    【讨论】:

      【解决方案3】:

      生产

      如果您在生产中使用 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 是 puma 服务器的进程 ID (PID)。您可以手动杀死它并在之后重新启动服务器。运行这个命令:

      kill -s 15 11654
      

      此命令是说使用信号 SIGTERM(代码 15)杀死 id 为 11654 的进程。 SIGTERM 会“友好地”终止进程,关闭所有文件、连接、清理缓冲区等。

      最后一次运行这个命令:

      puma -e development -p 3000 -d
      

      Puma 将在开发模式下再次启动,监听 3000 端口,执行将被妖魔化。

      【讨论】:

        【解决方案4】:

        据我所知,如果你使用capistrano3-puma gem,部署后不需要显式重启puma。有一个任务add_default_hooks 在部署后执行puma:smart_restart

        您可以通过cap -vT查看任务列表。我认为cap puma:restart 会完成这项工作。

        【讨论】:

        • 如果您将install_plugin Capistrano::Puma, load_hooks: true 添加到您的Capfile,您会没事的。
        【解决方案5】:

        您可以使用以下命令手动重启

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

        确保您指向正确的 pid 路径。

        【讨论】:

        • 取决于您如何部署应用程序。使用 capistrano,您可以为其编写任务并将它们包含在您的部署过程中,或者使用诸如 godgodrb.com 之类的东西,您也可以与 capistrano 集成
        • 对我来说bundle exec pumactl restart 已经足够了。
        猜你喜欢
        • 2021-12-18
        • 2021-07-20
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-08-06
        • 1970-01-01
        • 2023-03-22
        相关资源
        最近更新 更多