Docker Debian · 9 min read · Oct 05, 2025
Como Instalar e Usar Docker no Debian 12

Docker é um conjunto de plataformas abertas que fornece virtualização em nível de sistema operacional para desenvolver, enviar e executar aplicativos. No Docker, os aplicativos são entregues como pacotes padronizados chamados contêineres. Cada contêiner é isolado um do outro, incluindo bibliotecas e arquivos de configuração, mas cada um pode se comunicar através de canais de rede bem definidos.
Até agora, o Docker se tornou um padrão para desenvolvimento de software e DevOps. Milhões de desenvolvedores o utilizam para construir, compartilhar e executar aplicativos diariamente no trabalho. É usado no ciclo de vida do desenvolvimento de aplicativos, desde o desenvolvimento em si, até testes e produção. Com o Docker, o aplicativo se torna mais flexível e portátil. Os aplicativos podem ser executados em qualquer lugar em diferentes sistemas operacionais facilmente, mas o próprio aplicativo permanece o mesmo, desde bibliotecas até arquivos de configuração.
Neste guia, vou mostrar como instalar o Docker Engine na versão mais recente do Debian 12. Você também aprenderá a gerenciar o serviço Docker via systemctl e aprenderá o uso básico do Docker para gerenciar imagens, contêineres e volumes.
Pré-requisitos
Certifique-se de ter os seguintes requisitos antes de prosseguir com este guia:
Uma máquina Debian 12 - Você pode usar tanto o desktop quanto o servidor Debian.
Um usuário não-root com privilégios de administrador sudo.
Instalando o Docker Engine
Para obter a versão mais recente do Docker Engine, você deve instalá-lo através do repositório oficial do Docker. Você deve adicionar o repositório do Docker e a chave GPG primeiro, e depois instalar o Docker Engine.
Primeiro, atualize e atualize o repositório Debian para obter as informações mais recentes do pacote. Em seguida, instale o pacote básico ca-certificates, curl e gnupg no seu sistema Debian. Quando solicitado, digite y e pressione ENTER para confirmar.
sudo apt update
sudo apt install ca-certificates curl gnupg
Agora execute os seguintes comandos para configurar a chave GPG para o repositório Docker, que será armazenada no diretório /etc/apt/keyrings/.
sudo install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/debian/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
sudo chmod a+r /etc/apt/keyrings/docker.gpgDepois disso, execute o comando abaixo para adicionar o repositório Docker para o sistema Debian. No momento da redação deste texto, o Docker fornece repositórios para Debian 11 e 12.
echo \
"deb [arch="$(dpkg --print-architecture)" signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/debian \
"$(. /etc/os-release && echo "$VERSION_CODENAME")" stable" | \
sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
Em seguida, atualize o repositório Debian novamente e instale o Docker Engine via o comando apt abaixo. Este comando também instalará o containerd, que é o mecanismo de contêiner padrão, o plugin Docker buildx como o plugin de construção padrão com capacidades do BuildKit, e o Docker compose como um plugin.
sudo apt update
sudo apt install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-pluginDigite y quando solicitado e pressione ENTER.

Após instalar o Docker, execute o seguinte comando para verificar a versão. Durante a redação deste texto, o Docker v24.0.4 está instalado no Debian 12.
docker version
Gerenciando o Serviço Docker
O Docker Engine requer o containerd, que é usado como o mecanismo de contêiner padrão. Tanto o containerd quanto o docker devem estar em execução no seu host Docker. Agora, você aprenderá como gerenciar os serviços Docker e containerd via a utilidade systemd systemctl.
No Debian, os serviços docker e containerd são habilitados automaticamente. Execute o seguinte comando para verificar ambos os serviços docker e containerd.
sudo systemctl is-enabled docker
sudo systemctl is-enabled containerdSe habilitado, você deve obter a saída enabled no seu terminal.
Agora execute o comando abaixo para verificar o status do serviço do docker e containerd.
sudo systemctl status docker
sudo systemctl status containerdSe o serviço estiver em execução, a mensagem active (running) será exibida no seu terminal.

Em seguida, você pode executar o comando abaixo para iniciar os serviços docker e containerd.
sudo systemctl start docker
sudo systemctl start containerdSe necessário parar o Docker, execute os seguintes comandos para parar os serviços Docker e containerd.
sudo systemctl stop docker
sudo systemctl stop containerdPor último, reinicie usando o seguinte comando se fizer alterações na configuração do Docker.
sudo systemctl restart docker
sudo systemctl restart containerdConfigurando o Docker para Usuários Não-root
Por padrão, apenas o root pode executar o contêiner com o Docker Engine. Para permitir usuários não-root, você deve adicionar o usuário ao grupo docker. Para adicionar seu usuário ao grupo docker, complete estas seções e, em seguida, execute o contêiner hello-world.
Execute o comando usermod abaixo para adicionar seu usuário ao grupo docker e faça login como seu usuário via su.
sudo usermod -aG docker nome_de_usuario
su - nome_de_usuarioAgora insira o seguinte comando para executar o contêiner hello-world via seu usuário.
docker run hello-worldSe tudo correr bem, você deve ser apresentado com a mensagem Hello World do contêiner Docker assim:

Por último, executar o comando docker abaixo pode verificar a lista de contêineres.
docker ps -aVocê deve ver um contêiner com o status Exited. O nome do contêiner hello-world é aleatório por padrão, neste caso, o nome é optimistic_edison.
Executando e Gerenciando Contêiner com Docker
Neste ponto, o Docker Engine está em execução e você pode começar a criar contêineres via a linha de comando do docker. Na seção a seguir, você aprenderá o uso básico do Docker para:
- Gerenciar imagens Docker
- Criar e gerenciar contêineres
- Verificar logs de contêiner
- Criar e gerenciar volume Docker
Gerenciando Imagens Docker
Uma imagem docker é o todo do seu aplicativo empacotado em uma única imagem e facilmente distribuído via o registro de Imagens. O registro de imagens padrão para Docker é https://hub.docker.com/.
Na seção a seguir, você aprenderá como baixar imagens Docker, verificar imagens baixadas e excluir imagens.
Para baixar a imagem Docker do Registro Docker, execute o comando docker pull abaixo. O seguinte comando irá baixar a imagem nginx com a tag padrão latest.
docker pull nginx
Para especificar a versão da imagem, adicione a versão da imagem após a imagem alvo como a seguinte.
docker pull nginx:alpine
Agora verifique as imagens disponíveis no seu host Docker via o comando abaixo.
docker imagesAs imagens Docker baixadas devem estar disponíveis com informações detalhadas, como a tag da imagem e o tamanho.

Por último, use o parâmetro rmi para remover a imagem Docker do seu computador.
docker rmi nome_da_imagemGerenciando Contêineres
Um contêiner é onde seu aplicativo está em execução, e é baseado na sua imagem Docker. Um contêiner pode montar um diretório ou volume específico para dados persistentes e expor uma porta específica no host Docker para o aplicativo.
Nesta seção, você aprenderá como criar e executar o contêiner, verificar o contêiner e iniciar e parar o contêiner via a linha de comando do docker.
Para executar o contêiner, use o parâmetro run dentro do comando docker assim.
docker run -it -d -p 8080:80 --name web nginx:alpineO seguinte comando irá executar um contêiner web usando a imagem nginx:alpine. Além disso, o contêiner web irá expor a porta 80 dentro do contêiner e a porta 8080 dentro da máquina host Docker. Além disso, o parâmetro -it irá desanexá-lo do contêiner, e o parâmetro -d irá executar o contêiner web em segundo plano.
Agora execute o comando docker ps abaixo para verificar a lista de contêineres na sua máquina Docker.
docker ps
docker ps -aSe tudo correr bem, você deve ver o contêiner web em execução e a porta 8080 exposta na máquina host.
Enquanto o comando docker run irá criar e iniciar o contêiner, você também pode iniciar e parar o contêiner via o comando docker.
Execute o comando docker stop abaixo para parar o contêiner web.
docker container stop web
docker ps -a
Para iniciar o contêiner web novamente, use o seguinte comando docker start.
docker container start web
docker psPor último, execute o comando docker rm abaixo para excluir o contêiner. O parâmetro -f é usado para forçar a exclusão do contêiner, mesmo quando o contêiner alvo está em execução.
docker container rm optimistic_edison
docker container rm optimistic_edison -fVerificando Logs do Contêiner
Verificar logs no Docker é importante porque você sempre precisará disso para depurar seu aplicativo containerizado. Agora, você aprenderá como verificar logs de contêiner no Docker.
Para verificar os logs do contêiner, use o parâmetro logs no comando docker assim. Isso exibirá logs desde que o contêiner foi criado.
docker logs web
Agora você também pode adicionar a opção –tail N para obter apenas os logs mais recentes assim. Neste caso, a opção –tail 15 exibirá apenas as últimas 15 linhas de logs.
docker logs --tail 15 web
Gerenciando Volume Docker
O volume Docker é onde seu aplicativo pode usar armazenamento persistente. Você pode alterar seus contêineres e ainda usar o mesmo volume ou dados para seu aplicativo. A seção a seguir mostra o uso básico do volume Docker, desde a criação do volume até a verificação e uso do volume dentro do contêiner.
Para criar um novo volume, execute o comando docker volume abaixo. Neste demo, você criará um novo volume Docker myvol.
docker volume create myvolVerifique os volumes disponíveis no seu host Docker usando a opção ls assim. Você deve ver que o volume myvol foi criado.
docker volume ls
Por padrão, o Docker criará volume com o driver local, que usa o diretório local como um armazenamento de dados. E o diretório de armazenamento de dados padrão está localizado no diretório /var/lib/docker/volume. Execute a opção inspect assim para verificar os detalhes do volume myvol.
docker volume inspect myvolVocê deve ver o volume myvol com o driver padrão local e o armazenamento de dados localizado no diretório /var/lib/docker/volumes/myvol/_data. A seção Mountpoint é o diretório de armazenamento de dados local.

Em seguida, você pode usar o volume Docker no seu contêiner via a opção -v, que combina todas as opções em um campo, e a opção –mount que é mais explícita, verbosa e com sintaxe separada.
Execute o seguinte comando docker run para criar um novo contêiner web2 com o volume myvol via a opção –mount. Em seguida, inspecione o contêiner web via o comando docker inspect.
docker run -d \
-p 8081:80 \
--name web2 \
--mount source=myvol,target=/app \
nginx:alpinedocker inspect webDentro da seção Mounts, você deve ver que o contêiner web está usando o volume myvol para o diretório de destino /app dentro do contêiner.

Para usar a opção -v, o comando docker run deve ser assim. A opção -v usa um único campo para montar o volume myvol2 no diretório de destino /app.
docker run -d \
-p 8082:80 \
--name web3 \
-v myvol2:/app \
nginx:alpinePor último, execute o comando docker volume abaixo com o parâmetro rm para remover o volume Docker.
docker rm web2 -f
docker volume rm myvolConclusão
Ótimo trabalho! Você completou a instalação do Docker Engine no seu servidor Debian 12. Você também aprendeu como gerenciar o serviço Docker via a utilidade de comando systemctl e aprendeu como gerenciar imagens Docker, contêineres e volumes Docker via o cliente docker.
Para uma exploração mais aprofundada, você pode começar a construir uma imagem Docker para seu aplicativo via Dockerfile.
Receba novas postagens na sua caixa de entrada
Sem spam. Cancele a assinatura a qualquer momento.