Introdução
Neste laboratório, você aprenderá como gerenciar contextos Docker, com foco específico na sua remoção. Você começará criando um novo contexto Docker para entender o processo de adição de contextos. Em seguida, aprenderá como listar os contextos existentes para visualizar as configurações disponíveis e identificar o contexto ativo atual. O cerne do laboratório envolverá o uso do comando docker context rm para remover um contexto específico. Por fim, você explorará o comportamento ao tentar remover o contexto atualmente ativo sem forçar e, em seguida, removê-lo com sucesso usando a opção de força.
Criar um novo contexto Docker
Nesta etapa, aprenderemos como criar um novo contexto Docker. Um contexto Docker é uma forma de gerenciar conexões a diferentes daemons Docker. Por padrão, o Docker usa o contexto default, que se conecta ao daemon Docker local. Você pode criar novos contextos para se conectar a daemons Docker remotos ou outras ferramentas de orquestração.
Para criar um novo contexto Docker, usamos o comando docker context create. A sintaxe básica é docker context create <context_name>. Vamos criar um novo contexto chamado my-context.
docker context create my-context
Após executar o comando, você deve ver uma saída indicando que o contexto foi criado com sucesso.
my-context
Successfully created context "my-context"
Este comando cria um novo arquivo de configuração de contexto no seu diretório de configuração do Docker. Este contexto atualmente aponta para o mesmo daemon Docker local que o contexto default. Em etapas posteriores, exploraremos como configurar contextos para se conectar a diferentes ambientes Docker.
Listar contextos Docker existentes
Nesta etapa, aprenderemos como listar os contextos Docker existentes. Isso é útil para ver quais contextos estão disponíveis e qual está atualmente ativo.
Para listar os contextos Docker, usamos o comando docker context ls.
docker context ls
Após executar o comando, você deve ver uma tabela listando os contextos disponíveis. A saída incluirá o nome do contexto, a descrição, o endpoint e se ele é o contexto atual. Você deve ver o contexto default e o my-context que criamos na etapa anterior. O * ao lado de um nome de contexto indica que ele é o contexto atualmente ativo.
NAME DESCRIPTION DOCKER ENDPOINT KUBERNETES ENDPOINT ORCHESTRATOR
default * Current DOCKER_HOST environment unix:///var/run/docker.sock
my-context Docker context "my-context" unix:///var/run/docker.sock
Este comando ajuda você a controlar os diferentes ambientes Docker aos quais você pode se conectar.
Remover um contexto Docker específico
Nesta etapa, aprenderemos como remover um contexto Docker específico. Isso é útil para limpar contextos que não são mais necessários.
Para remover um contexto Docker, usamos o comando docker context rm seguido pelo nome do contexto que você deseja remover. Vamos remover o my-context que criamos nas etapas anteriores.
docker context rm my-context
Após executar o comando, você deve ver uma saída confirmando a remoção do contexto.
my-context
Agora, vamos listar os contextos novamente para confirmar que my-context foi removido.
docker context ls
A saída agora deve mostrar apenas o contexto default.
NAME DESCRIPTION DOCKER ENDPOINT KUBERNETES ENDPOINT ORCHESTRATOR
default * Current DOCKER_HOST environment unix:///var/run/docker.sock
Isso demonstra como remover um contexto Docker específico.
Tentar remover o contexto Docker atual sem forçar
Nesta etapa, tentaremos remover o contexto Docker atualmente ativo sem usar a opção de força. Isso demonstrará o comportamento do Docker ao tentar remover um contexto que está atualmente em uso.
Primeiro, vamos confirmar o contexto atual.
docker context ls
Você deve ver que o contexto default está marcado com um asterisco (*), indicando que é o contexto atual.
Agora, vamos tentar remover o contexto default usando o comando docker context rm.
docker context rm default
Você provavelmente verá uma mensagem de erro semelhante a esta:
Error: context "default" is currently in use
Este erro ocorre porque o Docker impede que você remova o contexto que está atualmente ativo para evitar interromper suas operações Docker atuais. Para remover o contexto atual, você precisa usar a opção de força, que abordaremos na próxima etapa.
Remover à força o contexto Docker atual
Nesta etapa, aprenderemos como remover à força o contexto Docker atualmente ativo. Como vimos na etapa anterior, você não pode remover o contexto atual sem usar a opção de força.
Para remover à força o contexto Docker atual, usamos o comando docker context rm com a flag -f ou --force, seguido pelo nome do contexto. Vamos remover à força o contexto default.
docker context rm -f default
Após executar o comando, você deve ver uma saída confirmando a remoção do contexto.
default
Agora, vamos listar os contextos novamente para confirmar que o contexto default foi removido.
docker context ls
Você provavelmente verá uma mensagem indicando que nenhum contexto está disponível, ou que o Docker mudou para um contexto padrão diferente, se existir um. Neste ambiente, remover o contexto default resultará em um erro ao tentar listar os contextos posteriormente, pois não há nenhum contexto ativo.
Error: No contexts available. Create a context, or use --help for more information.
Isso demonstra como remover à força o contexto Docker atual.
Resumo
Neste laboratório, aprendemos como gerenciar contextos Docker. Começamos criando um novo contexto chamado my-context usando o comando docker context create, que nos permite definir conexões com diferentes daemons Docker. Em seguida, usamos o comando docker context ls para listar os contextos disponíveis, observando o recém-criado my-context ao lado do contexto padrão e identificando o contexto atualmente ativo, marcado com um asterisco.
O laboratório continua demonstrando como remover um contexto Docker específico usando docker context rm. Também exploraremos o comportamento de tentar remover o contexto atualmente ativo sem a opção de força e, finalmente, aprenderemos como remover à força o contexto Docker atual.



