docker stack config
描述 | 在執行合併和插值後,輸出最終的配置檔案 |
---|---|
用法 | docker stack config [OPTIONS] |
Swarm 此命令適用於 Swarm 編排器。
描述
在對輸入的 Compose 檔案進行合併和插值後,輸出最終的 Compose 檔案。
選項
選項 | 預設值 | 描述 |
---|---|---|
-c, --compose-file | Compose 檔案的路徑,或 - 從標準輸入讀取 | |
--skip-interpolation | 跳過插值,只輸出合併後的配置 |
示例
以下命令輸出兩個 Compose 檔案合併和插值的結果。
$ docker stack config --compose-file docker-compose.yml --compose-file docker-compose.prod.yml
Compose 檔案也可以透過 --compose-file -
從標準輸入提供
$ cat docker-compose.yml | docker stack config --compose-file -
跳過插值
在某些情況下,跳過環境變數的插值可能很有用。例如,當您想將此命令的輸出管道回 stack deploy
時。
如果您的 Web 伺服器的環境變數中有一個用於重定向路由的正則表示式,您將使用兩個 $
符號來防止 stack deploy
插值 ${1}
。
service: webserver
environment:
REDIRECT_REGEX=http://host/redirect/$${1}
在插值時,stack config
命令會將 Compose 檔案中的環境變數替換為 REDIRECT_REGEX=http://host/redirect/${1}
,但當將其管道回 stack deploy
命令時,它會再次被插值,並導致未定義的行為。這就是為什麼在將輸出管道回 stack deploy
時,應始終優先使用 --skip-interpolation
選項。
$ docker stack config --compose-file web.yml --compose-file web.prod.yml --skip-interpolation | docker stack deploy --compose-file -