我试图在机器启动时启动ROR。在此link
之后但是当我在/ etc / init下测试my_program脚本时,我收到了以下错误消息: /home/usr/.rvm/gems/ruby-1.9.3-p448/gems/bundler-1.3.5/lib/bundler/runtime.rb:33:in在设置中阻止':你已经启动了机架1.5.2,但你的Gemfile需要机架1.4.5。使用bundle exec可以解决这个问题。 (GEM :: LoadError)
我用谷歌搜索,并尝试删除机架1.5.2 ...它不会工作,错误消息说它找不到机架1.5.2。然后当我尝试删除机架1.5.2 ..其他一些地方得到错误需要机架1.5 0.2。我知道在终端中可以通过使用来解决:bundle exec start 但是当我把bundle exec放在我的新手脚本中时,似乎无法识别。
附件是瘦自动启动的新贵脚本:
env LANG=en_US.UTF-8
env APP_HOME=/home/usr/Trail/testapp-v2
start on runlevel [2345] and started networking
stop on runlevel [!2345] and stopped networking
chdir /home/usr/Trail/testapp-v2
exec /home/usr/.rvm/wrappers/testapp-v2/thin start >> /home/testapp/log/thin.log 2>&1
respawn
respawn limit 1 10
如何修改
或者我需要什么设置让它开始变薄? 我正在使用ubuntu 12.04
提前致谢
答案 0 :(得分:0)
关于“无法识别捆绑命令”部分,我在实际命令之前设置RAILS ENV时遇到了类似的问题,我要解决的是强制它在bash中执行完整命令:
exec bash -c '/home/usr/.rvm/wrappers/testapp-v2/bundle exec thin start >> /home/testapp/log/thin.log 2>&1'
或
exec bash -c 'bundle exec /home/usr/.rvm/wrappers/testapp-v2/thin start >> /home/testapp/log/thin.log 2>&1'
不确定哪种语法正确