ruby-on-rails - 缺少 puma 和 nginx puma.sock 的 Rails 生产

标签 ruby-on-rails nginx puma

我正在使用 puma 和 nginx 在 digital ocean 上设置我的 Rails 生产服务器。

按照教程,我在/etc/nginx/sites-available/default 中输入了这个

server unix:/home/deploy/appname/shared/sockets/puma.sock fail_timeout=0;

但是在服务器上,文件夹 home/deploy/appname/shared/sockets/是空的。

我仔细检查了教程,没有一个提到创建这样的文件。

如果我运行 ps aux | grep puma我明白了

root 2076 0.0 0.3 52992 3544 pts/0 T 05:51 0:00 sudo nano require capistrano/puma root 2077 0.0 0.3 23872 3888 pts/0 T 05:51 0:00 nano require capistrano/puma rails 2407 0.0 0.0 14484 1012 pts/0 S+ 06:38 0:00 grep puma

这对我来说真的没有意义,因为我没有使用 capistrano。

我的问题是。 puma.sock 是如何创建的?在美洲狮安装期间?如果该目录为空,我错过了哪一步?

最佳答案

如果没有capistrano,您需要使用-b选项启动puma来创建sock文件:

puma -b unix:///__abs_path_to_your_app__/puma.sock

并且在 /etc/nginx/sites-available/default 中,您需要将路径更改为 .sock 文件:

server unix:///__abs_path_to_your_app__/puma.sock fail_timeout=0;

关于ruby-on-rails - 缺少 puma 和 nginx puma.sock 的 Rails 生产,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40779142/

相关文章:

ruby-on-rails - 哪个日期时间选择器只适用于 active admin 0.5.0

ruby-on-rails - 运行 "rails server"时,为什么我的本地主机拒绝在 Chrome 和 Firefox 上连接?

ruby-on-rails - 在 Rails 6 上定义 secret_key_base 的正确方法是什么?

javascript - 如何使用 Backbone 生态模板中的自定义模型功能?

ruby-on-rails - 如何为 postgres jsonb 字段添加事件管理字段

wordpress - Nginx反向代理https内容

caching - nginx 使用 memcached 缓存来自远程服务器的响应

php - Docker、NPM、PHPFPM 和 Symfony 上的 502 Bad Gateway

ruby - 从流 block 写入文件

ruby-on-rails - 如何使用 unix socket 启动 puma