docker compose 的使用
Docker compose
介紹
Docker Compose 是一個用於定義和運行多容器Docker應用程序的工具。使用Compose,您可以通過一個YAML文件來配置應用程序的服務。然後,使用一個單一的命令,創建並啟動所有服務的配置。
安裝
mac / windows
mac / windows
安装docker desktop時會自動安裝,若不滿意版本須直接更換docker desktop 安裝包到想要的版本
linux
linux
curl 安裝
1 |
|
pip 安裝
1 |
|
最新版本號查詢: https://github.com/docker/compose/releases
結構
1 |
|
使用
基礎指令
-d
或--detach
: 在後台運行容器,不顯示日誌輸出。--build
: 在運行之前重新構建映像。--force-recreate
: 強制重新創建容器,即使已經存在。--no-deps
: 不啟動依賴服務。--scale SERVICE=NUM
: 指定要啟動的服務實例數量。--remove-orphans
: 刪除無關聯的容器。--abort-on-container-exit
: 當容器退出時立即停止所有服務。--timeout TIMEOUT
: 設置超時時間,如果超過指定時間沒有完成,則停止服務
水平擴展
可以利用 Docker Compose 的服務副本(replicas)
特性
適用於無狀態或者可在多實例間共享狀態的應用
範例
1 |
|
環境變量
環境變量提供docker compose 在啟動時可以快速區分不同環境如(開發,生產等)
yaml 定義
1 |
|
使用 .env
文件
1 |
|
1 |
|
使用外部文件
1 |
|
command 中使用
1 |
|
確保不要在環境變量中設定隱私,如密碼或私鑰,尤其是在將 docker-compose.yml
文件和相關配置文件納入版本控制系統時。
如果使用 .env 文件或外部文件,需確保這些文件的安全性。
docker compose 的使用
https://shengshengyang.github.io/2024/01/20/docker-compose/