docker 堆栈配置

描述在执行合并和插值后输出最终配置文件
用法docker stack config [OPTIONS]

此命令适用于 Swarm 编排器。

描述

在对输入 Compose 文件进行合并和插值后,输出最终的 Compose 文件。

选项

选择违约描述
-c, --compose-fileCompose 文件的路径,或从 stdin 读取的路径-
--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}

使用插值时,该命令将替换 Compose 文件中的环境变量 替换为 ,但是当将其传递回命令时,它将再次值并导致未定义的行为。 这就是为什么在将 output 传回时,应该始终首选该选项。stack configREDIRECT_REGEX=http://host/redirect/${1}stack deploystack deploy--skip-interpolation

$ docker stack config --compose-file web.yml --compose-file web.prod.yml --skip-interpolation | docker stack deploy --compose-file -