You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

部署Rails应用到AWS Elastic Beanstalk时遇运行报错的求助

Elastic Beanstalk 部署Rails应用异常日志汇总

AWS新手在将Rails应用部署至Elastic Beanstalk过程中出现服务访问故障,关联的核心日志及问题说明如下:

Nginx错误日志

  • 日志路径:/var/log/nginx/error.log
  • 日志内容:
2021/04/04 14:11:01 [crit] 3132#0: *1 connect() to unix:///var/run/puma/my_app.sock failed (2: No such file or directory) while connecting to upstream, client: 137.59.228.225, server: _, request: "GET / HTTP/1.1", upstream: "http://unix:///var/run/puma/my_app.sock:/", host: "quinplus-env-1.eba-3w3vyz3h.us-east-2.elasticbeanstalk.com"
2021/04/04 14:11:01 [crit] 3132#0: *1 connect() to unix:///var/run/puma/my_app.sock failed (2: No such file or directory) while connecting to upstream, client: 137.59.228.225, server: _, request: "GET /favicon.ico HTTP/1.1", upstream: "http://unix:///var/run/puma/my_app.sock:/favicon.ico", host: "quinplus-env-1.eba-3w3vyz3h.us-east-2.elasticbeanstalk.com", referrer: "http://quinplus-env-1.eba-3w3vyz3h.us-east-2.elasticbeanstalk.com/"
2021/04/04 14:18:14 [crit] 3132#0: *6 connect() to unix:///var/run/puma/my_app.sock failed (2: No such file or directory) while connecting to upstream, client: 137.59.228.225, server: _, request: "GET / HTTP/1.1", upstream: "http://unix:///var/run/puma/my_app.sock:/", host: "quinplus-env-1.eba-3w3vyz3h.us-east-2.elasticbeanstalk.com"
2021/04/04 14:18:15 [crit] 3132#0: *6 connect() to unix:///var/run/puma/my_app.sock failed (2: No such file or directory) while connecting to upstream, client: 137.59.228.225, server: _, request: "GET /favicon.ico HTTP/1.1", upstream: "http://unix:///var/run/puma/my_app.sock:/favicon.ico", host: "quinplus-env-1.eba-3w3vyz3h.us-east-2.elasticbeanstalk.com", referrer: "http://quinplus-env-1.eba-3w3vyz3h.us-east-2.elasticbeanstalk.com/"
2021/04/04 14:51:47 [crit] 3132#0: *11 connect() to unix:///var/run/puma/my_app.sock failed (2: No such file or directory) while connecting to upstream, client: 137.59.228.225, server: _, request: "GET / HTTP/1.1", upstream: "http://unix:///var/run/puma/my_app.sock:/", host: "quinplus-env-1.eba-3w3vyz3h.us-east-2.elasticbeanstalk.com"
2021/04/04 14:51:47 [crit] 3132#0: *11 connect() to unix:///var/run/puma/my_app.sock failed (2: No such file or directory) while connecting to upstream, client: 137.59.228.225, server: _, request: "GET /favicon.ico HTTP/1.1", upstream: "http://unix:///var/run/puma/my_app.sock:/favicon.ico", host: "quinplus-env-1.eba-3w3vyz3h.us-east-2.elasticbeanstalk.com", referrer: "http://quinplus-env-1.eba-3w3vyz3h.us-east-2.elasticbeanstalk.com/"
  • 日志含义:Nginx反向代理无法连接到Puma应用预设的Unix套接字文件,说明后端应用服务完全没有正常运行。

部署活动日志

  • 日志路径:/var/log/eb-activity.log
  • 日志内容:
Warning: the running version of Bundler (1.16.0) is older than the version that created the lockfile (1.17.3). We suggest you upgrade to the latest version of Bundler by running `gem install bundler`.
Your Ruby version is 2.5.8, but your Gemfile specified 2.5.1 (Executor::NonZeroExitStatus)
  • 日志含义:这是导致Puma服务无法启动的直接根因,部署流程因版本校验不通过被直接中断,根本没有走到启动应用服务的步骤,自然不会生成对应的套接字文件。

对应解决操作

  • 匹配Ruby运行时版本:要么修改项目Gemfile中的Ruby版本声明,将指定的2.5.1调整为环境实际运行的2.5.8;要么在Elastic Beanstalk环境配置中切换为2.5.1版本的Ruby运行时,和项目声明保持一致。调整后同步更新Gemfile.lock,重新提交代码部署。
  • 匹配Bundler版本:通过项目根目录下的.ebextensions配置,在部署流程中自动安装和Gemfile.lock版本匹配的Bundler(1.17.3),避免版本不兼容导致的依赖安装失败。
  • 部署完成后校验:确认Puma服务正常启动、/var/run/puma/my_app.sock套接字文件正常生成,即可恢复Nginx的请求转发能力。

内容的提问来源于stack exchange,提问作者Spacehead

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.26 20:06:00