Я создал сценарий службы с именем "puma.service"
в /etc/systemd/system/
со следующим содержанием:Невозможно создать Systemd сценарий для Puma
[Unit]
Description=Puma HTTP Server
After=network.target
[Service]
Type=simple
User=ubuntu
WorkingDirectory=/home/username/appdir/current
ExecStart=/bin/bash -lc "/home/username/appdir/current/sbin/puma -C /home/username/appdir/current/config/puma.rb /home/username/appdir/current/config.ru"
Restart=always
[Install]
WantedBy=multi-user.target
Я включил службу и при запуске, я получаю следующий журнал из systemctl:
● puma.service - Puma HTTP Server
Loaded: loaded (/etc/systemd/system/puma.service; enabled; vendor preset: enabled)
Active: inactive (dead) (Result: exit-code) since Wed 2016-12-14 10:09:46 UTC; 12min ago
Process: 16889 ExecStart=/bin/bash -lc cd /home/username/appdir/current && bundle exec puma -C /home/username/appdir..
Main PID: 16889 (code=exited, status=127)
Dec 14 10:09:46 ip-172-31-29-40 systemd[1]: puma.service: Main process exited, code=exited, status=127/n/a
Dec 14 10:09:46 ip-172-31-29-40 systemd[1]: puma.service: Unit entered failed state.
Dec 14 10:09:46 ip-172-31-29-40 systemd[1]: puma.service: Failed with result 'exit-code'.
Dec 14 10:09:46 ip-172-31-29-40 systemd[1]: puma.service: Service hold-off time over, scheduling restart.
Dec 14 10:09:46 ip-172-31-29-40 systemd[1]: Stopped Puma HTTP Server.
Dec 14 10:09:46 ip-172-31-29-40 systemd[1]: puma.service: Start request repeated too quickly.
Dec 14 10:09:46 ip-172-31-29-40 systemd[1]: Failed to start Puma HTTP Server.
Хотя, когда я предоставляю команду в терминале SSH, сервер запускается и работает безупречно. Есть ли какие-либо изменения, которые я должен внести в файл службы?
Примечание:
- Я изменил dirnames для вашего удобства.
- Я провел некоторое исследование и причина статуса 127 из-за исполняемого файла не в пути. Но, я думаю, это не проблема.
Можете ли вы пролить свет?
Любая идея, если это будет работать иначе в rvm? Я пробовал это, используя соответствующие пути в rvm и все равно получаю тот же результат. – unclesol
Извините, я понятия не имею. Никогда не пробовал rvm, все мои сценарии развертывания были в rbenv. –