Docker Compose
本節包含與 Spring Boot 中 Docker Compose 支援相關的主題。
自定義 JDBC URL
當將 JdbcConnectionDetails 與 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,停止一個應用程式也會關閉其他仍在執行的應用程式的共享服務。將其設定為 start-only 不會在應用程式停止時停止共享服務,但有一個注意事項是,如果您關閉所有應用程式,服務將保持執行。您可以透過在包含 compose.yaml 檔案的目錄中執行命令列 docker compose stop 來手動停止服務。