【发布时间】:2016-02-11 11:40:08
【问题描述】:
我有一个 init.d 脚本,可以在重启后在我的服务器上启动 God。
我已经运行了 sudo chmod +x /etc/init.d/god 和 sudo update-rc.d -f god defaults,当我作为部署用户运行 /etc/init.d/god start 时,我没有任何问题,上帝开始了。
但是,当我重新启动服务器时,上帝并没有启动。
当我尝试以 root 身份手动启动 God 时,出现此错误:
Your Ruby version is 1.9.3, but your Gemfile specified 2.3.0
我认为问题与 root 没有 rvm 或 ruby 2.3.0 有关。有没有办法将 init.d 脚本作为 deploy 运行?
我使用的是 Ubuntu 14.04、ruby 2.3.0 和 god 0.13.7
【问题讨论】:
-
初始化脚本从超级用户运行。因此,使用了超级用户环境。而且您的目标机器似乎在 su env 中安装了 Ruby 1.9.3 版本。修复它的最简单方法是:运行
sudo su并安装rvm,然后以超级用户身份 安装Ruby 2.3。 -
我宁愿不以 root 身份安装
rvm,因为这意味着以 root 身份维护 ruby 版本并为将来的任何更新进行部署。如果我忘记这样做并且上帝倒下了,我会有很多问题。
标签: ruby-on-rails ruby linux god