このバージョンはまだ開発中であり、まだ安定しているとは見なされていません。最新の安定バージョンについては、Spring Boot 3.5.7 を使用してください!

Spring Boot アプリケーションのインストール

java -jar を使用して Spring Boot アプリケーションを直接実行するだけでなく、サービスとして実行することもできます。

systemd サービスとしてのインストール

systemd は System V init システムの後継であり、現在多くの最新の Linux ディストリビューションで使用されています。Spring Boot アプリケーションは、systemd の「サービス」スクリプトを使用して起動できます。

/var/myapp に uber jar としてパッケージ化された Spring Boot アプリケーションがあると仮定して、それを systemd サービスとしてインストールするには、myapp.service という名前のスクリプトを作成し、/etc/systemd/system ディレクトリに配置します。次のスクリプトは例を示しています。

[Unit]
Description=myapp
After=syslog.target network.target

[Service]
User=myapp
Group=myapp

Type=exec
ExecStart=/path/to/java/home/bin/java -jar /var/myapp/myapp.jar
WorkingDirectory=/var/myapp
SuccessExitStatus=143

[Install]
WantedBy=multi-user.target
アプリケーションの DescriptionUserGroupExecStartWorkingDirectory フィールドを変更することを忘れないでください。
ExecStart フィールドは、スクリプトアクションコマンドを宣言しません。これは、run コマンドがデフォルトで使用されることを意味します。

アプリケーションを実行するユーザー、PID ファイル、コンソールログファイルは systemd 自体によって管理されるため、「サービス」スクリプト内の適切なフィールドを使用して構成する必要があります。詳細については、サービスユニット設定のマニュアルページ (英語) を参照してください。

システムの起動時に自動的に起動するようにアプリケーションにフラグを付けるには、次のコマンドを使用します。

$ systemctl enable myapp.service

詳細については、man systemctl を実行してください。

Microsoft Windows サービス

winsw [GitHub] (英語) を使用して、Spring Boot アプリケーションを Windows サービスとして開始できます。

別途メンテナンスされているサンプル [GitHub] (英語) )では、Spring Boot アプリケーション用の Windows サービスを作成する方法を順を追って説明しています。