Introdução
Neste laboratório, você aprenderá como usar efetivamente o comando docker config ls para gerenciar suas configurações do Docker. Você começará listando todas as configurações disponíveis, entendendo como criá-las e visualizá-las.
Com base nisso, você explorará técnicas de filtragem poderosas usando a flag --filter para localizar configurações específicas por nome e rótulo (label). Finalmente, você aprenderá como formatar a saída do comando docker config ls para exibir as informações da maneira que melhor se adapta às suas necessidades.
Listar todas as configurações
Nesta etapa, você aprenderá como listar todas as configurações do Docker usando o comando docker config ls. As configurações do Docker são usadas para armazenar dados sensíveis ou arquivos de configuração que podem ser acessados por serviços.
Primeiro, vamos criar uma configuração simples. Criaremos um arquivo chamado my_config.txt em seu diretório home com algum conteúdo de exemplo.
echo "This is a sample configuration." > ~/my_config.txt
Agora, vamos criar uma configuração do Docker a partir deste arquivo.
docker config create my_config ~/my_config.txt
Você deve ver o ID da configuração criada como saída.
Agora, você pode listar todas as configurações do Docker disponíveis usando o comando docker config ls.
docker config ls
Este comando exibirá uma tabela com informações sobre suas configurações, incluindo o ID, Nome e o timestamp CreatedAt. Você deve ver o my_config que acabou de criar na lista.
Filtrar configurações por nome
Nesta etapa, você aprenderá como filtrar as configurações do Docker por nome usando a flag --filter com a chave name. Isso é útil quando você tem muitas configurações e deseja encontrar uma específica.
Na etapa anterior, você criou uma configuração chamada my_config. Vamos criar outra configuração para demonstrar a filtragem.
Primeiro, crie um novo arquivo chamado another_config.txt em seu diretório home.
echo "This is another configuration." > ~/another_config.txt
Agora, crie uma configuração do Docker a partir deste arquivo.
docker config create another_config ~/another_config.txt
Você deve ver o ID da configuração recém-criada.
Agora, vamos listar todas as configurações novamente para ver ambas.
docker config ls
Você deve ver my_config e another_config na saída.
Para filtrar as configurações e mostrar apenas a que se chama my_config, você pode usar a opção --filter name=my_config.
docker config ls --filter name=my_config
Este comando exibirá apenas a configuração com o nome my_config.
Da mesma forma, para filtrar e mostrar apenas another_config, você usaria:
docker config ls --filter name=another_config
Isso demonstra como usar o filtro name para encontrar configurações específicas.
Filtrar configurações por rótulo
Nesta etapa, você aprenderá como filtrar as configurações do Docker por rótulos usando a flag --filter com a chave label. Rótulos são pares chave-valor que você pode anexar a objetos Docker para organizá-los e categorizá-los.
Primeiro, vamos criar uma nova configuração e adicionar um rótulo a ela. Criaremos um arquivo chamado labeled_config.txt em seu diretório home.
echo "This config has a label." > ~/labeled_config.txt
Agora, crie uma configuração do Docker a partir deste arquivo e adicione um rótulo env=production usando a flag --label.
docker config create --label env=production labeled_config ~/labeled_config.txt
Você deve ver o ID da configuração criada.
Vamos criar outra configuração com um rótulo diferente. Crie um arquivo chamado another_labeled_config.txt.
echo "This config has a different label." > ~/another_labeled_config.txt
Agora, crie uma configuração do Docker com o rótulo env=development.
docker config create --label env=development another_labeled_config ~/another_labeled_config.txt
Agora, liste todas as configurações para ver as recém-criadas com rótulos.
docker config ls
Você deve ver labeled_config e another_labeled_config na lista.
Para filtrar configurações por rótulo, você usa o formato --filter label=<key>=<value>. Por exemplo, para listar configurações com o rótulo env=production:
docker config ls --filter label=env=production
Este comando mostrará apenas o labeled_config.
Para listar configurações com o rótulo env=development:
docker config ls --filter label=env=development
Isso mostrará o another_labeled_config.
Você também pode filtrar apenas pela chave do rótulo, independentemente do valor. Por exemplo, para listar todas as configurações que possuem um rótulo env:
docker config ls --filter label=env
Isso mostrará tanto labeled_config quanto another_labeled_config.
Formatar a saída da lista de configurações
Nesta etapa, você aprenderá como formatar a saída do comando docker config ls usando a flag --format. Isso permite que você personalize a saída para exibir apenas as informações que você precisa ou para apresentá-las em um formato específico, como JSON.
Por padrão, docker config ls gera uma tabela.
docker config ls
Você pode usar a flag --format para especificar um template Go para formatar a saída. Por exemplo, para exibir apenas o ID e o nome da configuração, você pode usar o seguinte formato:
docker config ls --format "{{.ID}}\t{{.Name}}"
Este comando exibirá o ID e o nome de cada configuração, separados por uma tabulação.
Você também pode gerar os dados em formato JSON, o que é útil para scripting ou integração com outras ferramentas.
docker config ls --format json
Isso exibirá um array JSON onde cada elemento representa uma configuração.
Vamos tentar outro formato para exibir o nome e o tempo de criação.
docker config ls --format "Config Name: {{.Name}}, Created At: {{.CreatedAt}}"
Este comando exibirá uma string personalizada para cada configuração, mostrando seu nome e o timestamp de criação.
Você pode explorar outros campos disponíveis para incluir em seu formato inspecionando uma configuração usando docker config inspect <config_id>.
Por exemplo, vamos inspecionar my_config para ver seus detalhes. Substitua <config_id> pelo ID real de my_config da saída de docker config ls.
docker config inspect my_config
A saída mostrará vários campos como ID, Name, CreatedAt, UpdatedAt, Spec e Version. Você pode usar esses nomes de campo em sua string --format.
Experimente diferentes strings de formato para ver como você pode personalizar a saída de acordo com suas necessidades.
Resumo
Neste laboratório, você aprendeu como usar o comando docker config ls para listar as configurações do Docker. Você começou criando uma configuração de exemplo usando docker config create e, em seguida, usou docker config ls para visualizar todas as configurações disponíveis, observando o ID, o Nome e o timestamp CreatedAt.
Além disso, você explorou como filtrar as configurações listadas usando a flag --filter. Você aprendeu a filtrar por nome usando --filter name=<config_name> para exibir apenas as configurações que correspondem a um nome específico.



