docker compose stop

O comando docker compose stop é utilizado para interromper a execução dos containers que estão ativos, mas sem removê-los. Isso permite que os containers sejam parados temporariamente e reiniciados mais tarde sem perder o estado ou as configurações.

Estrutura do Comando

docker compose stop [opções] [SERVIÇOS...]
  • SERVIÇOS: Você pode especificar quais serviços deseja parar. Se nenhum serviço for especificado, todos os containers dos serviços definidos no docker-compose.yml serão parados.

Principais Opções

  • -t ou --timeout: Define o tempo, em segundos, que o Compose aguardará antes de forçar a parada dos containers. O valor padrão é 10 segundos.

Comportamento Padrão

  • Parada de Containers: O comando docker compose stop envia um sinal SIGTERM para os processos em execução nos containers, permitindo que eles finalizem corretamente. Se os processos não responderem dentro do tempo definido (por padrão, 10 segundos), um sinal SIGKILL é enviado para forçar a parada.

  • Preservação do Estado: Como os containers não são removidos, o estado interno dos containers, incluindo o sistema de arquivos e variáveis de ambiente, é preservado. Isso permite que os containers sejam reiniciados mais tarde com o comando docker compose start sem perda de dados ou configurações.

Exemplos

  1. Parando todos os containers definidos no docker-compose.yml:

    docker compose stop
  2. Parando um serviço específico:

    docker compose stop web
  3. Parando múltiplos serviços específicos:

    docker compose stop web db
  4. Parando todos os containers com um timeout personalizado de 5 segundos:

    docker compose stop -t 5

Diferenças com Outros Comandos

  • docker compose down: Enquanto o stop simplesmente para os containers, o down remove os containers, redes e outros recursos criados pelo Compose. Use stop quando você deseja preservar o estado dos containers para reiniciá-los posteriormente, e down quando você quer limpar completamente o ambiente.

  • docker compose kill: O kill interrompe imediatamente os containers sem aguardar que os processos internos finalizem de forma adequada. O stop, por outro lado, dá tempo para que os processos internos encerrem corretamente.

Quando Utilizar

O comando docker compose stop é ideal em situações onde você precisa pausar temporariamente a execução dos containers, mas planeja reiniciá-los mais tarde sem perder o estado atual. É útil em cenários de desenvolvimento ou em processos onde a manutenção do estado do container é importante.

Considerações Finais

O docker compose stop é uma ferramenta valiosa para gerenciar o ciclo de vida dos containers em ambientes de desenvolvimento ou produção. Ele permite a parada controlada dos serviços, mantendo o ambiente preparado para uma retomada futura sem a necessidade de recriação dos containers ou reconfiguração do ambiente.

Last updated