情况:我有一个rails应用程序,sidekiq,工作得很好,在debian8下.
我希望更容易控制我的sidekiq,所以不是使用-d选项守护它,而是想创建一个sidekiq.service文件/etc/systemd/system/sidekiq.service.(所以我能够sudo systemctl restart sidekiq.service)
我在github上看到了gitlab是怎么做的,但它对我不起作用,因为我使用rvm来安装ruby.
如果我对/ path/to/rvm/bin/bundle做同样的事情,它会返回一个错误"无法找到Gemfile".(我之前也跑了gem install bundler)
我可以从另一个目录启动sidekiq,而不是我的rails应用程序:
BUNDLE_GEMFILE=/home/me/myapp/Gemfile bundle exec sidekiq --config /home/me/myapp/config/sidekiq.yml --require /home/me/myapp/config/environment.rb
但是在ExecStart行的/etc/systemd/system/sidekiq.service中,我有一个错误: Executable path is not absolute
关于我怎么做的任何线索?
或者,在docker容器中运行sidekiq可能会更高效/更简单吗?