【问题标题】:setup ROR application using puma nginx and capistrano使用 puma nginx 和 capistrano 设置 ROR 应用程序
【发布时间】:2022-01-07 14:44:50
【问题描述】:

我正在尝试将 ruby​​ on rails 应用程序部署到 Amazon EC2 实例,使用 puma 作为应用程序服务器、nginx 服务器和 capistrano 进行部署。目前我遇到了错误消息:

nginx 日志没有显示任何错误,

puma 日志也没有显示错误原因

我已使用以下命令验证 puma 服务器已启动并正在运行:

ubuntu@ip-nnnnn:~$ ps aux | grep puma
deployer   89555  0.0  1.5 652040 248180 ?       Sl   21:48   0:00 puma 3.12.1 (unix://nnnn/nnn/current/tmp/sockets/puma.sock) [20211130214658]
deployer   89561  0.0  1.5 854804 259336 ?       Sl   21:48   0:00 puma: cluster worker 0: 89555 [20211130214658]
deployer   89566  0.0  1.5 787216 247824 ?       Sl   21:48   0:00 puma: cluster worker 1: 89555 [20211130214658]
ubuntu     89845  0.0  0.0   8168   740 pts/0    S+   22:23   0:00 grep --color=auto puma

capistrano 部署没有任何错误,所有任务都正常完成,在 capistrano 部署期间 puma 服务器重新启动正常。

应用程序日志没有最近的数据,看起来它没有达到那个点,它在那之前就中断了。

【问题讨论】:

  • 也许您可以尝试以development 模式而不是production 进行部署,这样它将显示开发错误页面,其中包含更多详细信息而不是那个。虽然从该屏幕截图中应该有一些东西在应用程序的 log/ 目录中
  • @arieljuod 应用程序以development 模式部署。你知道我应该更改什么设置才能看到详细的错误页面吗?
  • @arieljuod,经过一番谷歌搜索后,我似乎需要设置 config.consider_all_requests_local = true 才能看到完整的错误详细信息页面。
  • 不以任何模式进行部署。 Capistrano 脚本决定了如何进行部署。 Rails 服务器的运行方式决定了您的应用程序运行的模式,您绝对应该在生产服务器上以生产模式而不是开发模式运行 Rails 服务器。其他的都是疯狂的

标签: ruby-on-rails nginx ruby-on-rails-5 capistrano puma


【解决方案1】:

在我的特殊情况下,这是由于停止了 REDIS 服务。应用程序被配置为使用 REDIS 进行缓存,但是 REDIS 服务没有运行。由于某种原因,这没有反映在日志中,我花了很多时间找出问题所在。

【讨论】:

    猜你喜欢
    • 2020-04-22
    • 1970-01-01
    • 2016-08-25
    • 2017-03-16
    • 2017-08-23
    • 1970-01-01
    • 2016-01-16
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多