Запуск Ruby на Rails в качестве systemd

OS: Centos 7

Я пытаюсь запустить Snorby как systemd, но скрипты запускаются неправильно

Я могу сделать bundle exec rails server-e development-b 0.0.0.0 в командной строке, находясь в папке Snorby, без каких-либо проблем, но когда я помещаю его в скрипт и выполняю с systemctl, он работает неправильно.

[Service]
WorkingDirectory=/tmp/snorby
Environment=RAILS_ENV=development
ExecStart=/usr/local/rbenv/shims/bundle exec rails server -d -b 0.0.0.0

выход состояния

snorby.service - Snorby ConfiServ

Loaded: loaded (/usr/lib/systemd/system/snorby.service; enabled; vendor preset: disabled)

Active: inactive (dead) since Thu 2017-08-03 13:25:34 UTC; 1min 18s ago
  Process: 5533 ExecStart=/usr/local/rbenv/shims/bundle exec rails server -d -b 0.0.0.0 (code=exited, status=0/SUCCESS)
 Main PID: 5533 (code=exited, status=0/SUCCESS)

Aug 03 13:25:32 TEST-02 systemd[1]:   
 Started Snorby ConfiServ.

Aug 03 13:25:32 TEST-02 systemd[1]:  
 Starting Snorby ConfiServ...

Aug 03 13:25:34 TEST-02 bundle[5533]:  
 /usr/local/rbenv/versions/2.3.1/lib/ruby/gems/2.3.0/gems/actionpack-3.2.22/lib/action_dispatch/http/mime_type.rb:102: warning: already initialized constant Mime::PDF

Aug 03 13:25:34 TEST-02 bundle[5533]:  
 /usr/local/rbenv/versions/2.3.1/lib/ruby/gems/2.3.0/gems/actionpack-3.2.22/lib/action_dispatch/http/mime_type.rb:102: warning: previous definition of PDF was here  

Aug 03 13:25:34 TEST-02 bundle[5533]:  
  No time_zone specified in snorby_config.yml; detected time_zone: UTC

Aug 03 13:25:34 TEST-02 bundle[5533]: => Booting Thin

Aug 03 13:25:34 TEST-02 bundle[5533]: => Rails 3.2.22 application starting in development on http://0.0.0.0:3000
10
задан karel
11.11.2022 18:51 Количество просмотров материала 3632
Распечатать страницу

2 ответа

в моем случае , это сработало, когда я использовал 'bash-l' перед сценарием, как показано ниже.

ExecStart=/bin / bash-l 'ваша команда или сценарий ruby'

Я думаю, centos 7 имеет некоторые проблемы с загрузкой переменных окружения ruby с systemd. Однако он работал на ubuntu без опции-l.

0
отвечен Jayaprakash 2022-11-13 02:39

Я разберусь - нужно запускать Thin на Systemd

-2
отвечен nan008 2022-11-13 04:56

Постоянная ссылка на данную страницу: [ Скопировать ссылку | Сгенерировать QR-код ]

Ваш ответ

Опубликуйте как Гость или авторизуйтесь

Имя
Вверх