Docker Compose
このセクションには、Spring Boot での Docker Compose サポートに関するトピックが含まれています。
JDBC URL のカスタマイズ
JdbcConnectionDetails
(Javadoc) を Docker Compose と併用する場合、サービスに org.springframework.boot.jdbc.parameters
ラベルを適用することで、JDBC URL のパラメーターをカスタマイズできます。例:
services:
postgres:
image: 'postgres:15.3'
environment:
- 'POSTGRES_USER=myuser'
- 'POSTGRES_PASSWORD=secret'
- 'POSTGRES_DB=mydb'
ports:
- '5432:5432'
labels:
org.springframework.boot.jdbc.parameters: 'ssl=true&sslmode=require'
この Docker Compose ファイルを配置すると、使用される JDBC URL は jdbc:postgresql://127.0.0.1:5432/mydb?ssl=true&sslmode=require
になります。
複数のアプリケーション間でサービスを共有する
複数のアプリケーション間でサービスを共有する場合は、いずれかのアプリケーションで compose.yaml
ファイルを作成し、他のアプリケーションで構成プロパティ spring.docker.compose.file
を使用して compose.yaml
ファイルを参照します。また、spring.docker.compose.lifecycle-management
を start-only
に設定する必要があります。デフォルトは start-and-stop
であり、1 つのアプリケーションを停止すると、まだ実行中の他のアプリケーションの共有サービスもシャットダウンされるためです。start-only
に設定すると、アプリケーションの停止時に共有サービスは停止されませんが、すべてのアプリケーションをシャットダウンしてもサービスは実行されたままになることに注意してください。compose.yaml
ファイルが含まれるディレクトリ内のコマンドラインで docker compose stop
を実行することにより、サービスを手動で停止できます。