Как трудно это может возможно быть должно запустить рубиновый скрипт на запуске?!
Довольно жесткий, по-видимому:
Я использую rvm
и рабочий рубин 2.3.0
.
which ruby
возвраты /home/ubuntu/.rvm/rubies/ruby-2.3.0/bin/ruby
Местоположение сценария: /home/redline/sinatra-aggregator/server.rb
. Я попробовал все виды chown
s и chmod
s на нем, возможно, это имеет что-то, чтобы сделать с ним.
Сервер запускается. Как я заставляю его работать sudo ruby server.rb
? Даже не нужен sudo.
Существует приблизительно десять миллионов учебных руководств о том, как сделать это Используя выскочку, rc.local или init.d, и я не знаю то, что я делаю, потому что ни один не работал. Я даже попробовал crontab.
В настоящее время, мой crontab -e
похож на это:
@reboot /home/ubuntu/start.sh
/home/ubuntu/start.sh:
/home/ubuntu/.rvm/rubies/ruby-2.3.0/bin/ruby /home/ubuntu/sinatra-aggregator/server.rb >> log.txt
log.txt всегда пуст, между прочим.
Я попробовал подобные установки rc.local
и init.d
Я пытался запустить программное обеспечение с nohup
, это удалось хорошо, но здесь является выводом журнала:
== Sinatra (v1.4.7) has taken the stage on 3000 for production with backup from Thin
== Sinatra has ended his set (crowd applauds)
Starting //Blueline Scraper!
Thin web server (v1.6.4 codename Gob Bluth)
Maximum connections set to 1024
Listening on 0.0.0.0:3000, CTRL+C to stop
Stopping ...
Stopping ...
/usr/lib/ruby/1.9.1/rubygems/custom_require.rb:36:in `require': cannot load such file -- sinatra (LoadError)
from /usr/lib/ruby/1.9.1/rubygems/custom_require.rb:36:in `require'
from server.rb:2:in `<main>'
ubuntu@ip-172-31-35-95:~/sinatra-aggregator$
Я поставил Вас что-либо, что это - RVM, не обеспечивающий ПУТЬ так или иначе к драгоценным камням, в которых я нуждаюсь как не, только они существуют в системе, но и являются пакетом install'd. Если я использую bundle exec
в моем @reboot
директива и если не, как я добавляю $PATH перед выполнением сценария?
Править:
Решение испытанного Michael, не работал по различным причинам, объясненным в комментариях.
Имейте Вас, попробовал это:
cron /home/redline/sinatra-aggregator/server.rb
cron restart
и это могло бы хорошо работать этот путь.