スポンサーリンク
.Net Core コンソールアプリケーションをsystemdを利用してサービス化する方法です。
環境
- C# .Net Core 3.1
- CentOS 7
ユニットファイル作成
$ vi /etc/systemd/system/myapp.service
[Unit]
Description=my hogehoge app
[Service]
# 実行ディレクトリ
WorkingDirectory=/opt/hogehoge/
# 実行ファイル
ExecStart=/opt/hogehoge/ConsoleApp1
# 10秒後に再起動
Restart=always
RestartSec=10
SyslogIdentifier=dotnet-example
# 適切なユーザーを指定
User=hoge-user
Environment=ASPNETCORE_ENVIRONMENT=Production
[Install]
WantedBy=multi-user.target
実行
サービスの起動
$ sudo systemctl start myapp.service
サービスの状態確認
$ sudo systemctl status myapp.service
サービスの停止
$ sudo systemctl stop myapp.service
サービスの再起動
$ sudo systemctl restart myapp.service
サービスの自動起動
$ sudo systemctl enable myapp
ファイル修正時: systemd再読み込み
$ sudo systemctl daemon-reload
スポンサーリンク
スポンサーリンク