Docker Stop: Como parar e gerenciar containers com Docker
Neste artigo, vamos explorar como parar e remover containers com Docker.
Como parar containers com Docker
1. Uso do comando “docker stop”
Parar containers é uma tarefa essencial ao trabalhar com Docker. Quando queremos interromper a execução de um container, existem algumas opções disponíveis. Vamos explorar algumas delas:
1. Uso do comando “docker stop”: O comando “docker stop” é uma forma direta de parar um container. Basta executar o comando seguido do nome ou ID do container que deseja parar. Por exemplo:
docker stop meu-container
Isso enviará um sinal de parada (SIGTERM) para o processo em execução dentro do container. O Docker aguardará um tempo limite (por padrão, 10 segundos) para permitir que o processo seja encerrado corretamente. Se o processo não for encerrado nesse período, o Docker enviará um sinal de força bruta (SIGKILL) para finalizar o processo imediatamente.
2. Utilizando o sinal de parada
Outra opção é enviar diretamente o sinal de parada para o processo em execução dentro do container. Para fazer isso, é necessário obter o ID do processo em execução dentro do container e enviar o sinal manualmente. Isso pode ser feito utilizando o comando “docker kill” seguido do ID do container e do sinal de parada. Por exemplo:
docker kill -s SIGTERM meu-container
Essa abordagem é útil quando você precisa parar um processo específico dentro do container, em vez de parar todo o container.



Gerenciando containers com Docker Stop
Além de parar containers, o Docker também oferece recursos para gerenciar containers em execução. O comando “docker stop” pode ser combinado com outras opções para controlar o comportamento do container durante o processo de parada. Vamos explorar algumas dessas opções:
1. Tempo limite personalizado: Por padrão, o Docker aguarda 10 segundos para que um processo seja encerrado corretamente durante o comando “docker stop”. No entanto, esse tempo limite pode ser personalizado. Para definir um tempo limite personalizado, basta utilizar a opção “–time” seguida do valor desejado em segundos. Por exemplo:
docker stop --time 30 meu-container
Isso fará com que o Docker aguarde 30 segundos antes de enviar um sinal de força bruta para finalizar o processo.
2. Reiniciando containers automaticamente: Em alguns casos, pode ser útil configurar um container para reiniciar automaticamente após ser parado. Isso pode ser feito utilizando a opção “–restart” seguida do valor desejado. Por exemplo:
docker stop --restart=always meu-container
Dessa forma, o container será reiniciado automaticamente se for parado por algum motivo.
Como parar e remover containers com Docker
Além de parar containers, também pode ser necessário remover containers que não são mais necessários. A remoção de containers é um processo simples e pode ser realizado utilizando o comando “docker rm”. Vejamos como fazer isso:
1. Removendo um container em execução: Se você deseja remover um container que está em execução, é necessário pará-lo primeiro utilizando o comando “docker stop” e, em seguida, executar o comando “docker rm” seguido do nome ou ID do container. Por exemplo:
docker stop meu-container docker rm meu-container
Isso irá parar o container e, em seguida, removê-lo completamente do sistema.
2. Removendo múltiplos containers: Se você quiser remover vários containers de uma só vez, é possível passar os nomes ou IDs dos containers separados por espaço para o comando “docker rm”. Por exemplo:
docker rm meu-container1 meu-container2 meu-container3
Isso irá parar e remover todos os containers especificados de uma só vez.
Opções avançadas para parar containers com Docker Stop



Além das opções básicas mencionadas anteriormente, o Docker oferece algumas opções avançadas para o comando “docker stop”. Essas opções permitem um controle mais refinado sobre o processo de parada dos containers. Vamos explorar algumas delas:
1. Sinal personalizado: Em vez de utilizar o sinal padrão (SIGTERM) para parar um container, é possível especificar um sinal personalizado utilizando a opção “–signal”. Por exemplo:
docker stop --signal=SIGINT meu-container
Isso irá enviar o sinal SIGINT para o processo em execução dentro do container.
2. Parada assíncrona: Por padrão, o comando “docker stop” aguarda até que o processo dentro do container seja encerrado antes de continuar a execução. No entanto, é possível utilizar a opção “–time” em conjunto com a opção “–stop-signal” para permitir uma parada assíncrona. Isso significa que o Docker enviará o sinal de parada e continuará a execução imediatamente, sem aguardar o término do processo. Por exemplo:
docker stop --time=0 --stop-signal=SIGINT meu-container
Isso enviará o sinal SIGINT para o processo e continuará a execução imediatamente.
Conclusão
O Docker oferece diversas opções para parar e gerenciar containers de forma eficiente. O comando “docker stop” é uma ferramenta poderosa para interromper a execução de containers, permitindo um controle preciso sobre o processo de parada. Além disso, o Docker também oferece recursos avançados, como tempos limite personalizados, reinicialização automática e opções de sinal personalizado, que podem ser úteis em diferentes cenários.
Ao utilizar o Docker e o comando “docker stop”, é importante entender as opções disponíveis e escolher a abordagem mais adequada para cada situação. Assim, você poderá gerenciar seus containers de forma eficiente e garantir um ambiente de desenvolvimento ou produção estável e confiável.
A Awari é a melhor plataforma para aprender sobre ciência de dados no Brasil.
Aqui você encontra cursos com aulas ao vivo, mentorias individuais com os melhores profissionais do mercado e suporte de carreira personalizado para dar seu próximo passo profissional e aprender habilidades como Data Science, Data Analytics, Machine Learning e mais.
Já pensou em aprender de maneira individualizada com profissionais que atuam em empresas como Nubank, Amazon e Google? Clique aqui para se inscrever na Awari e começar a construir agora mesmo o próximo capítulo da sua carreira em dados.


