由于我无法控制的原因,我需要在CentOS 7上运行一个Rails 4应用程序。目前,它在一台有rvm和Passenger的Red上运行成功。我想把它迁移到rbenv和Puma,但我被这个问题卡住了。
我正在尝试在VirtualBox虚拟机上运行测试安装。我相信我已经把所有的东西都正确地连接在一起了。我已经禁用了SELinux。当我运行cap deploy时,puma成功启动:
04:03 puma:start
using conf file /var/www/rails-app/shared/puma.rb
01 bundle exec puma -C /var/www/rails-app/shared/puma.rb --daemon
01 * Pruning Bundler environment
01 [6464] Puma starting in cluster mode...
01 [6464] * Version 3.9.1 (ruby 2.1.10-p492), codename: Private Caller
01 [6464] * Min threads: 4, max threads: 16
01 [6464] * Environment: vm
01 [6464] * Process workers: 1
01 [6464] * Phased restart available
01 [6464] * Listening on unix:///var/www/rails-app/shared/tmp/sockets/puma.sock
01 [6464] * Daemonizing...
✔ 01 deploy@localhost 0.537s但是Puma访问日志在无限循环中产生了这个错误:
/home/deploy/.rbenv/versions/2.1.10/lib/ruby/2.1.0/rubygems/core_ext/kernel_require.rb:55:in `require': cannot load such file -- bundler/setup (LoadError)
... stack trace clipped ...列出与我的Puma用户关联的进程如下所示:
$ ps aux | grep deploy
deploy 12645 0.0 0.2 115384 2084 pts/0 S 18:18 0:00 -bash
deploy 18517 0.7 1.7 271344 18076 ? Sl 18:27 0:00 puma 3.9.1 (unix:///var/www/rails-app/shared/tmp/sockets/puma.sock)
deploy 23279 7.0 0.0 0 0 ? Z 18:29 0:00 [ruby] <defunct>
deploy 23283 4.0 1.7 273400 17464 ? Rl 18:29 0:00 puma: cluster worker 0: 18517我已经确认,我可以作为拥有Rails应用程序和彪马进程的deploy用户成功运行Bundler:
cd /var/www/rails-app/current && bundler --version
Bundler version 1.15.4所以我不确定为什么我会看到这个错误。经过几个小时的研究和故障排除,我被卡住了。如果需要,我可以提供配置文件,但它们是非常标准的,我认为在这一点上只会把这个问题搞得一团糟。
这个问题对任何人来说都很熟悉吗?
发布于 2017-08-27 01:52:56
解决此类问题的几个步骤:
gem install bundlerhttps://stackoverflow.com/questions/45890395
复制相似问题