当我尝试使用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
这里可能出现什么问题?
答案 0 :(得分:0)
这是known issue,截至今天已经修补了 - 虽然我不相信包含该补丁的新版puma已经发布。
如果您使用的是Bundler,则可以使用以下命令专门安装修补版本。
gem 'puma', :github => "puma/puma", :ref => "3d1eefbd7e9c72a5173fe017f1b4fe41204beba2"
答案 1 :(得分:0)
请参阅:Server deployments for Rails + Puma + Nginx + Capistrano 3
这是我自己编写的详细介绍服务器部署的指南,包括完整的nginx
和puma
配置,也许将配置文件与它们进行比较可以帮助您更好地跟踪问题。