使用Nginx和Capistrano部署Puma

时间:2013-05-05 20:20:49

标签: nginx capistrano puma

当我尝试使用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

这里可能出现什么问题?

2 个答案:

答案 0 :(得分:0)

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

如果您使用的是Bundler,则可以使用以下命令专门安装修补版本。

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

答案 1 :(得分:0)

请参阅:Server deployments for Rails + Puma + Nginx + Capistrano 3

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