Compartir comentarios
Las respuestas se generan en base a la documentación.

docker stack config

DescripciónDevuelve el archivo de configuración final tras realizar las fusiones e interpolaciones
Usodocker stack config [OPTIONS]

Swarm Este comando funciona con el orquestador de Swarm.

Descripción

Muestra el archivo Compose final tras realizar las fusiones e interpolaciones de los archivos Compose de entrada.

Opciones

OpciónPredeterminadoDescripción
-c, --compose-fileRuta a un archivo Compose, o - para leer desde la entrada estándar (stdin)
--skip-interpolationOmite la interpolación y muestra únicamente la configuración fusionada

Ejemplos

El siguiente comando muestra el resultado de la fusión e interpolación de dos archivos Compose.

$ docker stack config --compose-file docker-compose.yml --compose-file docker-compose.prod.yml

El archivo Compose también se puede proporcionar a través de la entrada estándar con --compose-file -:

$ cat docker-compose.yml | docker stack config --compose-file -

Omitir la interpolación

En algunos casos, puede ser útil omitir la interpolación de las variables de entorno. Por ejemplo, si quieres redirigir la salida de este comando de vuelta a stack deploy.

Si tienes una expresión regular para una ruta de redirección en una variable de entorno de tu servidor web, usarías dos signos $ para evitar que stack deploy interpole ${1}.

  service: webserver
  environment:
    REDIRECT_REGEX=http://host/redirect/$${1}

Con la interpolación, el comando stack config reemplazará la variable de entorno en el archivo Compose con REDIRECT_REGEX=http://host/redirect/${1}, pero luego, al redirigirlo al comando stack deploy, se volverá a interpolar y provocará un comportamiento indefinido. Por eso, al redirigir la salida de vuelta a stack deploy, se debe preferir siempre la opción --skip-interpolation.

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