私のサービスは突然動作を停止し、systemctl status
次のように報告します。
Main PID: 5459 (code=killed, signal=TERM)
また、journald
私のサービス(journalctl -u myservice.service
)を確認しましたが、最後の項目は次のとおりです。
<...>
systemd[1]: Stopped MyService Service.
これは手動で停止したことを意味しますかsystemctl stop
、または競合が発生したことを意味できますか?知る方法はありますか?
答え1
Rails 5.0.1とRuby 2.3.3を使用してubuntu 18.04で同じ問題が発生します。コマンドラインまたはsystemdを介してサーバーを起動すると、同じ出力が表示されます。
$ /usr/local/bin/ruby bin/rails server -b0.0.0.0 -p 3000 -e production
=> Booting Thin
=> Rails 5.0.1 application starting in production on http://0.0.0.0:3000
=> Run `rails server -h` for more startup options
[2022-06-21 12:55:32] INFO -- Thin web server (v1.8.1 codename Infinite Smoothie)
[2022-06-21 12:55:32] INFO -- Maximum connections set to 1024
[2022-06-21 12:55:32] INFO -- Listening on 0.0.0.0:3000, CTRL+C to stop
Exiting
コンソールからサーバーを起動するか、コンソールにこの出力が表示されます。ログ制御私がそれを介して始めたときシステム、systemctlステータスはMain PID: 19315 (code=killed, signal=TERM)
OPの説明に示すように報告されます。
もう一つの奇妙なことは、次のようにコマンドラインからサーバーを起動した場合-D(デーモンとして実行中)これで正常に動作します。
/usr/local/bin/rails server -b0.0.0.0 -p 3000 -e production -d
うまくいきます!
システムサービスファイルには変更はなく、サーバーコード自体にも重要な変更はありません。サーバーの構成中にgem hellを経験したため、これは環境の問題かもしれません。しかし、これは実際には説明されていません。-Dもの。