docker compose config

O comando docker compose config é usado para validar e visualizar a configuração do arquivo docker-compose.yml. Ele ajuda a identificar erros, visualizar a configuração combinada e expandida, e verificar se o arquivo está corretamente estruturado.

Estrutura do Comando

docker compose config [opções]

Principais Opções

  • --resolve-image-digests: Substitui as tags de imagem no arquivo docker-compose.yml por seus respectivos digests, o que garante que a mesma versão da imagem seja usada em diferentes ambientes.

  • --no-interpolate: Desativa a interpolação de variáveis de ambiente, exibindo o arquivo de configuração com as variáveis sem substituição.

  • --no-consistency: Ignora a verificação de consistência de nomes de serviços duplicados e outros conflitos potenciais na configuração.

  • --quiet ou -q: Supressão de todas as mensagens de saída, exibindo apenas se o arquivo é válido ou não.

  • --services: Exibe uma lista de nomes de serviços definidos no docker-compose.yml. Isso é útil para inspecionar rapidamente quais serviços estão configurados.

  • --volumes: Exibe uma lista de nomes de volumes definidos no docker-compose.yml.

  • --profiles: Exibe uma lista de perfis configurados no arquivo Compose. Perfis permitem ativar ou desativar grupos de serviços de acordo com as necessidades específicas do ambiente.

Comportamento Padrão

  • Validação do Arquivo: Ao executar docker compose config, o Docker Compose analisa o arquivo docker-compose.yml para garantir que ele esteja bem formado e que todas as chaves e valores estejam corretos e consistentes. Se houver erros de sintaxe ou lógica, eles serão relatados.

  • Expansão e Interpolação: Variáveis de ambiente referenciadas no arquivo Compose são interpoladas (substituídas pelos seus valores atuais). O arquivo resultante, com todas as variáveis resolvidas, é exibido. Isso é útil para verificar como o arquivo final será interpretado pelo Docker Compose.

Exemplos

  1. Validando o arquivo docker-compose.yml:

  2. Exibindo a configuração com as variáveis de ambiente interpoladas:

  3. Listando todos os serviços definidos no docker-compose.yml:

  4. Listando todos os volumes definidos no docker-compose.yml:

  5. Exibindo a configuração sem interpolar as variáveis de ambiente:

  6. Validando a configuração e verificando a consistência sem exibir a saída completa:

  7. Resolvendo os digests das imagens:

Diferenças com Outros Comandos

  • docker compose up: Embora o up valide o arquivo antes de iniciar os serviços, docker compose config é usado especificamente para inspecionar e validar o arquivo antes de qualquer ação ser tomada, garantindo que a configuração está correta antes de qualquer execução.

  • docker inspect: Enquanto o inspect é usado para inspecionar containers, volumes, e imagens já existentes, docker compose config é usado para inspecionar e validar o arquivo de configuração antes que ele seja aplicado.

Quando Utilizar

O comando docker compose config é útil em várias situações, como:

  • Validação de Configurações: Antes de executar docker compose up, use docker compose config para garantir que o arquivo docker-compose.yml está correto e que todas as variáveis de ambiente estão sendo resolvidas como esperado.

  • Depuração: Se você estiver enfrentando problemas ao iniciar seus serviços, este comando pode ajudar a identificar erros na configuração ou verificar como as variáveis de ambiente estão sendo aplicadas.

  • Inspeção Rápida: Use as opções --services, --volumes, e --profiles para inspecionar rapidamente elementos específicos do seu arquivo de configuração.

Considerações Finais

O docker compose config é uma ferramenta essencial para a validação e depuração de configurações no Docker Compose. Ele permite visualizar a configuração completa e expandida, garantindo que o ambiente de execução seja configurado corretamente, evitando erros durante a criação e execução dos containers.

Last updated