【发布时间】:2014-10-10 03:16:19
【问题描述】:
我的目标是在服务器启动时启动 sidekiq(我正在使用带有自动缩放组的 EC2)。我知道还有其他一些关于让 sidekiq 在启动时从暴发户开始的帖子,但我认为我的帖子并没有得到具体解决。
我正在使用这个 wiki - https://github.com/mperham/sidekiq/tree/master/examples/upstart/manage-many 并将脚本放在 /etc/init/sidekiq.conf 和 /etc/init/sidekiq-manager.conf 中。
我已经按照/etc/init/sidekiq.conf 中的指示进行了一些小修改,更改:
# setuid apps# setgid apps-> 将两行中的apps替换为ubuntu,即部署用户。export HOME=/home/apps到export HOME=/home/ubuntu
我还有一个 /etc/sidekiq.conf,其中包含以下行:
/home/ubuntu/app_dir, 2
否则,这些脚本与引用的存储库中包含的脚本相同。我的日志中出现以下错误 (/var/log/upstart)
/bin/bash: line 19: cd: 2: No such file or directory
Could not locate Gemfile
它看起来好像是在尝试更改 /home/ubuntu/app_dir 以外的目录,此时它位于错误的目录中并且找不到我的 Gemfile。
我是否需要在其他地方指定我的应用目录的正确路径?
谢谢!
【问题讨论】:
-
如果你只在机器上使用一个应用程序,不要使用manage-many。 manage-one 更简单。
-
谢谢!这让我走上了正轨——在这一点上,我唯一的问题似乎是在 sidekiq.conf 的这一部分加载 ruby 环境:
source /etc/profile.d/rbenv.sh。我也尝试了类似于在接受的答案中建议的解决方案:stackoverflow.com/questions/24179503/…,但无济于事。我的错误信息如下:/bin/bash: line 9: exec: sidekiq: not found -
更具体地说,“错误消息”是指我在
/var/log/upstart/的sidekiq日志文件中找到的输出
标签: ruby-on-rails ubuntu amazon-ec2 sidekiq upstart