6

Supervisord で ruby​​ スクリプトを管理しようとしていますが、RVM の仕組みを完全には理解していないため、適切に実行できませんでした。

通常、私は次のことを行います。

# sourcing of rvm done automatically on ssh login
cd /var/rails/myapp
RAILS_ENV="production" bundle exec ./script/backgroundrb

しかし、次の構成ファイルではできません。

[program:owgm]
directory=/var/rails/owgm
command=bundle exec ./script/backgroundrb
environment=RAILS_ENV="production"
PATH="/usr/local/rvm/gems/ree-1.8.7-2012.02@global/bin/bundle:$PATH"
autostart=true
autorestart=true

次のエラーが表示されます。

OpenSSL を読み込めませんでした。OpenSSL をサポートする Ruby を再コンパイルするか、Gemfile のソースを「https」から「http」に変更する必要があります。RVM を使用して OpenSSL でコンパイルする手順は、rvm.io/packages/openssl で入手できます。

適切な Ruby 環境を取得できていないようです。

パスを設定するとうまくいくと思いました。

which bundle

私は得る: /usr/local/rvm/gems/ree-1.8.7-2012.02@global/bin/bundle

しかし、何が起こっているのかさえわかりません。

Python では、次のようなことを行います。

command=/path/to/virtualenv/bin/python /path/to/script.py

Rubyでできることと似たようなことはありますか?

rvm 情報の出力は次のとおりです。

ree-1.8.7-2012.02:

  system:
    uname:       "Linux owtb2 3.2.0-44-generic #69-Ubuntu SMP Thu May 16 17:35:01 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux"
    system:      "ubuntu/12.04/x86_64"
    bash:        "/bin/bash => GNU bash, version 4.2.25(1)-release (x86_64-pc-linux-gnu)"
    zsh:         " => not installed"

  rvm:
    version:      "rvm 1.21.3 (stable) by Wayne E. Seguin <wayneeseguin@gmail.com>, Michal Papis <mpapis@gmail.com> [https://rvm.io/]"
    updated:      "4 months 4 days 3 hours 54 minutes 35 seconds ago"

  ruby:
    interpreter:  "ruby"
    version:      "1.8.7"
    date:         "2012-02-08"
    platform:     "x86_64-linux"
    patchlevel:   "2012-02-08 MBARI 8/0x6770 on patchlevel 358"
    full_version: "ruby 1.8.7 (2012-02-08 MBARI 8/0x6770 on patchlevel 358) [x86_64-linux], MBARI 0x6770, Ruby Enterprise Edition 2012.02"

  homes:
    gem:          "/usr/local/rvm/gems/ree-1.8.7-2012.02"
    ruby:         "/usr/local/rvm/rubies/ree-1.8.7-2012.02"

  binaries:
    ruby:         "/usr/local/rvm/rubies/ree-1.8.7-2012.02/bin/ruby"
    irb:          "/usr/local/rvm/rubies/ree-1.8.7-2012.02/bin/irb"
    gem:          "/usr/local/rvm/rubies/ree-1.8.7-2012.02/bin/gem"
    rake:         "/usr/local/rvm/gems/ree-1.8.7-2012.02@global/bin/rake"

  environment:
    PATH:         "/usr/local/rvm/gems/ree-1.8.7-2012.02/bin:/usr/local/rvm/gems/ree-1.8.7-2012.02@global/bin:/usr/local/rvm/rubies/ree-1.8.7-2012.02/bin:/usr/local/rvm/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games"
    GEM_HOME:     "/usr/local/rvm/gems/ree-1.8.7-2012.02"
    GEM_PATH:     "/usr/local/rvm/gems/ree-1.8.7-2012.02:/usr/local/rvm/gems/ree-1.8.7-2012.02@global"
    MY_RUBY_HOME: "/usr/local/rvm/rubies/ree-1.8.7-2012.02"
    IRBRC:        "/usr/local/rvm/rubies/ree-1.8.7-2012.02/.irbrc"
    RUBYOPT:      ""
    gemset:       ""
4

2 に答える 2

7

@mpapis の提案のおかげで、うまくいくものを見つけることができました。

彼の提案は残念ながらそうではありませんでしたが、/usr/local/rvm/wrappersを調べなければならなかったという点で彼は正しかったです。

これは作業構成ファイルです。

[program:owgm]
directory=/var/rails/owgm
command=/usr/local/rvm/wrappers/ree-1.8.7-2012.02/bundle exec ./script/backgroundrb
environment=RAILS_ENV="production"
autostart=true
autorestart=true
于 2013-11-06T13:53:43.250 に答える
3

そのはず:

PATH="/usr/local/rvm/wrappers/ree-1.8.7-2012.02@global:$PATH"
于 2013-11-06T12:27:15.390 に答える