使用Nginx和Capistrano部署Puma

问题描述 投票:1回答:2

当我尝试使用Puma和Nginx部署我的Rails应用程序时,我遇到了一些问题。 我有一个常规的Capistrano设置,包括puma/capistrano

当运行cap deploy:cold时,它第一次完美无缺。 在初始部署之后,我正在尝试通过cap deploy部署我的更改,结果是

Bad response from server: 500  

在我尝试使用cap deploy:stop后,我遇到以下错误:

undefined method `split' for nil:NilClass  

运行cap deploy:restart时会导致:

no such file or directory - "/home/deployer/apps/teachmeo/shared/sockets/pumactl.sock"

所以,重新部署之后我唯一的方法是清理/shared/sockets/目录并再次使用cap deploy:cold

这可能会出错?

nginx capistrano puma
2个回答
0
投票

这是一个known issue,截至今天已被修补 - 虽然我不相信包含该补丁的新版puma已经发布。

如果您使用的是Bundler,则可以使用以下方法专门安装修补版本:

gem 'puma', :github => "puma/puma", :ref => "3d1eefbd7e9c72a5173fe017f1b4fe41204beba2"

0
投票

见:Server deployments for Rails + Puma + Nginx + Capistrano 3

这是我自己编写的指南,详细介绍了服务器部署,包括完整的nginxpuma配置,也许将配置文件与它们进行比较可以帮助您更好地跟踪问题。

© www.soinside.com 2019 - 2024. All rights reserved.