Я пытаюсь экспортировать простое приложение на Ruby с помощью мастера. Судя по его использованию для systemd, я, кажется, все делаю правильно.
Однако, когда я запускаю цель / сервис, я получаю сообщения о статусе в соответствии с этим:
systemd[1]: Starting app-web-1.service...
systemd[1]: Started app-web-1.service.
systemd[1]: Service app-web-1.service is not needed anymore. Stopping.
systemd[1]: Stopping app-web-1.service...
systemd[1]: Stopped app-web-1.service.
Процесс начинается, потом заканчивается. Я понятия не имею, почему это происходит.
Конечно, я не эксперт в systemd. Я впервые работаю со служебными сценариями, поэтому я не уверен, что в сгенерированных файлах есть что-то, что вызывает это.
При экспорте через мастера создаются несколько целевых и служебных файлов. Таким образом, есть несколько, с которыми мне приходится иметь дело.
Вот содержимое app.target:
[Unit]
StopWhenUnneeded=true
Wants=app-web.target
[Install]
WantedBy=multi-user.target
И содержимое app-web-1.target:
[Unit]
StopWhenUnneeded=true
Wants=app-web-1.service
Наконец, app-web-1.service:
[Unit]
StopWhenUnneeded=true
[Service]
User=deployer
WorkingDirectory=/home/deployer/app/releases/20141202043054
Environment=PORT=5000
ExecStart=/bin/bash -lc 'bundle exec puma -p 5000 '
Restart=always
StandardInput=null
StandardOutput=syslog
StandardError=syslog
SyslogIdentifier=%n
KillMode=process
Очевидно, что StopWhenUnneeded
является частью проблемы, но я не уверен, что это должно делать в контексте запуска веб-сервера в моем приложении.
Может кто-нибудь помочь мне понять, как заставить сервер работать и постоянно?