Как автоматически выполнить рубиновый сценарий в Ubuntu?

Как трудно это может возможно быть должно запустить рубиновый скрипт на запуске?!

Довольно жесткий, по-видимому:

Я использую rvm и рабочий рубин 2.3.0.

which ruby возвраты /home/ubuntu/.rvm/rubies/ruby-2.3.0/bin/ruby Местоположение сценария: /home/redline/sinatra-aggregator/server.rb. Я попробовал все виды chowns и chmods на нем, возможно, это имеет что-то, чтобы сделать с ним.

Сервер запускается. Как я заставляю его работать 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, не работал по различным причинам, объясненным в комментариях.

3
задан 16 February 2016 в 23:49

1 ответ

Имейте Вас, попробовал это:

cron /home/redline/sinatra-aggregator/server.rb
cron restart

и это могло бы хорошо работать этот путь.

-1
ответ дан 2 December 2019 в 01:21

Другие вопросы по тегам:

Похожие вопросы: