curso
Instalar o Docker no Ubuntu: Da configuração ao primeiro contêiner
Se você quiser parar de dizer, "isso funciona na minha máquina", a a conteinerização é o caminho a seguir.
Simplificando, a conteinerização permite que você empacote seus aplicativos em ambientes leves e isolados chamados de contêineres. Esses contêineres incluem tudo o que é necessário para executar o aplicativo, como código e dependências, mas nada desnecessário. Um aplicativo em contêiner será executado de forma consistente em diferentes ambientes, seja no seu laptop, em um servidor de teste ou na produção.
O Docker continua sendo a plataforma ideal para a criação de aplicativos em contêineres em 2025. Ele pode ser executado em qualquer sistema operacional, mas, como acontece com a maioria das ferramentas de desenvolvimento, os sistemas baseados em UNIX são os preferidos.
Neste artigo, você aprenderá a instalar o Docker no Ubuntu, a iniciar seu primeiro contêiner e a gerenciar e monitorar os contêineres em execução.
A configuração é simples, mas envolve algumas etapas. Vamos mergulhar de cabeça!
O Docker é o mesmo que o Kubernetes? Aqui estão todas as diferenças que todo desenvolvedor deve conhecer.
Preparando seu sistema Ubuntu
Antes de instalar o Docker no Ubuntu, você precisa realizar algumas tarefas domésticas. Você tratará de todos eles nesta seção.
Para começar, verifique se você está executando um sistema Ubuntu, seja na versão Desktop ou Server. Estamos usandoo Ubuntu Server 24.04:
Imagem 1 - Detalhes do sistema operacional
Se você vir uma saída semelhante à mostrada na imagem acima, você está pronto para começar.
Verifique os requisitos do sistema
Antes de instalar o Docker, certifique-se de que seu sistema tenha recursos suficientes para executá-lo.
Embora o Docker não especifique os requisitos mínimos em seu site (além de arquiteturas de CPU compatíveis), descobrimos que os requisitos a seguir são suficientes para executar o próprio Docker:
- Sistema operacional: Ubuntu Desktop/Server 20.04 ou posterior
- Arquitetura da CPU: 64 bits (x86_64 ou arm64)
- Memória: 512 MB de RAM
- Armazenamento: 5 GB
Uma máquina com essas especificações permitirá que você execute o Docker, mas não muito mais. Não espere executar contêineres complexos ou aplicativos com vários contêineres.
Se você planeja fazer mais, procure ter pelo menos 2 GB de RAM, 25 GB de armazenamentoe uma CPU moderna.
Atualize seu sistema Ubuntu
Estamos executando o Docker em uma nova instância do Ubuntu Server, portanto, forneceremos todos os comandos necessários para configurar os pré-requisitos do Docker.
Primeiro, atualize a lista de pacotes do seu sistema e atualize os pacotes existentes executando o seguinte comando:
sudo apt update && sudo apt upgrade -y
Esse processo pode levar alguns minutos, mas garante que o gerenciador de pacotes recupere as versões mais recentes dos pacotes e as atualizações de segurança.
Garantir os pré-requisitos
O Docker requer algumas dependências para ser instalado e funcionar corretamente. Execute este comando para instalá-los:
sudo apt install -y apt-transport-https ca-certificates curl software-properties-common
Em resumo, o comando acima habilita os downloads de pacotes por HTTPS e instala as ferramentas necessárias para obter as chaves GPG do Docker (que discutiremos mais adiante).
E pronto, seu sistema agora está pronto para instalar o Docker!
Instalando o Docker no Ubuntu
Depois que os pré-requisitos do sistema são atendidos, a instalação do Docker no Ubuntu é um processo de quatro etapas.
Etapa 1: Adicionar a chave GPG oficial do Docker
A chave GPG (GNU Privacy Guard) do Docker é usada para assinar pacotes e repositórios do Docker, garantindo a integridade e a autenticidade das imagens e dos pacotes do Docker.
Comece executando o comando shell apropriado para fazer o download da chave e armazenar uma versão convertida compatível com o APT em /usr/share/keyrings
.
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
Etapa 2: Adicionar o repositório APT oficial do Docker
Agora, adicione o repositório oficial do Docker ao seu sistema.
O próximo comando usa a chave GPG armazenada anteriormente para verificar a autenticidade do repositório e, em seguida, adiciona-o às fontes de pacotes do sistema:
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
Depois disso, atualize a lista de pacotes do seu sistema para incluir o novo repositório:
sudo apt update
Etapa 3: Instalar o Docker
Agora que o repositório está configurado, você está pronto para instalar o Docker no Ubuntu.
O comando de instalação instalará o mecanismo principal do Docker, sua interface de linha de comando e o tempo de execução para gerenciar a execução do contêiner:
sudo apt install -y docker-ce docker-ce-cli containerd.io
Quando a instalação for concluída, você verá um resultado confirmando que a instalação foi bem-sucedida:
Imagem 2 - Resultados da instalação do Docker
Etapa 4: Verificar a instalação do Docker
Agora o Docker deve estar instalado em seu sistema.
Para verificar, imprima a versão do Docker no console. Se a instalação for bem-sucedida, você verá um número de versão exibido:
docker --version
Imagem 3 - Versão instalada do Docker
Desde o final de janeiro de 2025, a versão 27.5.1 do Docker é a mais recente, e nós a executamos com sucesso no Ubuntu Server.
Etapas pós-instalação
Agora você tem o Docker instalado e está pronto para começar a colocar seus aplicativos em contêineres.
Mas o que é conteinerização? Nosso curso de conceitos de conteinerização e virtualização ensinará a você os conceitos básicos.
Antes de fazer isso, recomendamos que você siga três etapas adicionais de configuração para aproveitar ao máximo o recurso. Esta seção é para você se quiser executar o Docker na inicialização do sistema ou gerenciarimagens e contêineres como um usuário não raiz.
Etapa 1: Inicie e ative o serviço do Docker
O serviço Docker está em execução no momento em seu sistema, mas não será iniciado automaticamente após uma reinicialização.
Para garantir que o Docker inicie automaticamente na inicializaçãouse systemctl
para habilitar o serviço:
sudo systemctl enable docker
Você deverá ver um resultado semelhante ao nosso:
Imagem 4 - Habilitando o serviço do Docker na inicialização
No futuro, se você vir uma mensagem indicando que o Docker não está em execução (o que não deve acontecer), você pode iniciar o Docker manualmente usando o seguinte comando:
sudo systemctl start docker
Agora o Docker permanecerá ativo e em execução enquanto seu sistema estiver ligado.
Etapa 2: Verificar o status do Docker
Há alguns comandos adicionais do systemctl
que você pode usar para gerenciar o serviço do Docker.
Por exemplo, o comando status
mostra o estado de um serviço, que geralmente é ativo, inativo ou com falha. Embora existam outros estados possíveis, esses três são os mais frequentes:
sudo systemctl status docker
Imagem 5 - Status do serviço do Docker
Se o serviço do Docker estiver ativo, todos os sistemas estão funcionando corretamente.
Se você vir um estado diferente para o Docker ou qualquer outro serviço, reiniciá-lo deverá resolver o problema:
sudo systemctl restart docker
Depois de reiniciado, você pode verificar o status novamente para confirmar que o serviço está em execução.
Etapa 3: Gerencie o Docker como um usuário não raiz
Por padrão, a execução de comandos do Docker requer o endereço sudo
, o que pode ser inconveniente. Isso significa que você deve digitar sudo
antes de qualquer comando docker
.
Felizmente, há uma maneira fácil de permitir que usuários não root executem comandos do Docker, adicionando o usuário atual ao grupo docker:
sudo usermod -aG docker $USER
Depois de executar o comando acima, faça logout e login novamente para que a alteração tenha efeito. Agora você deve ser capaz de executar comandos do Docker sem privilégios de superusuário.
Verificaremos isso na próxima seção.
Testando a instalação do Docker
Agora o Docker está instalado e configurado. Ele também é executado automaticamente na inicialização e permite que o usuário execute comandos diretamente.
Nesta seção, encerraremos as coisas executando dois contêineres: um para um exemplo simples de "Hello, World!" e outro para um script Python.
Etapa 1: Execute um contêiner do Docker de teste
O Docker fornece uma imagem de teste simples chamada hello-world
, que é usada apenas para confirmar que o Docker está funcionando corretamente.
Execute o seguinte comando para iniciar a imagem:
docker run hello-world
Como a imagem não é encontrada localmente, o Docker a baixará automaticamente da Web. Após alguns instantes, você verá um resultado semelhante a este:
Imagem 6 - Exemplo de hello world do Docker
Em resumo, isso confirma que o Docker está instalado corretamente, que o daemon do Docker está em execução e que seu sistema pode extrair imagens do Docker Hub.
Etapa 2: Execute seu primeiro contêiner "real"
Se você quiser criar imagens do zero, esta seção é para você.
Criaremos uma imagem simples com Python 3.9 que, quando iniciada, executa um script Python personalizado.
Comece criando uma pasta dedicada e um arquivo app.py
que será executado:
mkdir python-docker-test && cd python-docker-test
nano app.py
O arquivo contém apenas um comando print()
simples, mas é claro que você pode expandi-lo para incluir uma lógica mais complexa:
print("Hello from Docker running on Ubuntu!")
Na mesma pasta, crie um Dockerfile
, que informa ao Docker como criar a imagem passo a passo:
nano Dockerfile
Essas três linhas são tudo o que você precisa:
FROM python:3.9-slim
COPY app.py /app.py
CMD ["python", "/app.py"]
Basicamente, o Docker é instruído a buscar a imagem python:3.9-slim
do Docker Hub, copiar o script app.py
para o contêiner e, em seguida, executar o script.
Neste momento, você deve ter os seguintes arquivos no diretório de trabalho:
Imagem 7 - Conteúdo do aplicativo Python de demonstração
Para criar a imagemexecute o seguinte comando:
docker build -t python-hello .
O comando acima cria uma nova imagem no diretório atual (.
) e atribui a ela a tag python-hello
.
Imagem 8 - Criando uma imagem do Docker
Para executar a imagem, use o comando docker run
seguido da tag da imagem. O sinalizador opcional --rm
garante que o contêiner seja removido depois que ele sair, o que acontece imediatamente após o script Python terminar a execução:
docker run --rm python-hello
Imagem 9 - Executando um script Python no Docker
E assim, você conseguiu colocar em contêineres seu primeiro aplicativo Python com o Docker em execução no Ubuntu!
Se você estiver procurando um aplicativo de aprendizado de máquina do Docker, o Containerization do DataCamp: Docker e Kubernetes para aprendizado de máquina é uma leitura de acompanhamento recomendada.
Atualizando e desinstalando o Docker no Ubuntu
A execução do Docker em seu próprio ambiente oferece a você controle total, mas também o torna responsável por acompanhar as atualizações, os novos recursos e os patches de segurança mais recentes.
Esta seção explica como executar tarefas básicas, como atualizar o Docker e removê-lo completamente do seu sistema.
Atualizando o Docker
A atualização do Docker se resume a duas etapas principais:
- Atualizar a lista de pacotes para buscar a versão mais recente do Docker.
- Atualizar o Docker (núcleo, CLI e tempo de execução de gerenciamento de contêineres) para a versão mais recente.
Execute os seguintes comandos no terminal para atualizar o Docker no Ubuntu:
sudo apt update
sudo apt upgrade -y docker-ce docker-ce-cli containerd.io
docker --version
O comando docker -- version
exibe a versão instalada no momento. Essa é a maneira mais fácil de verificar se o Docker foi atualizado com êxito.
Desinstalação do Docker
Se precisar remover o Docker do seu sistema, você deve começar desinstalando o Docker e os pacotes relacionados e removendo todos os arquivos e configurações restantes relacionados ao Docker.
Além disso, você pode, opcionalmente, remover o repositório do Docker das fontes do APT.
Os quatro comandos a seguir desinstalarão o Docker do seu sistema Ubuntu, mas lembre-se de que apenas os três primeiros são necessários:
sudo apt remove -y docker-ce docker-ce-cli containerd.io
sudo rm -rf /var/lib/docker
sudo rm -rf /var/lib/containerd
# Optional
sudo rm /etc/apt/sources.list.d/docker.list
Depois de executar esses comandos, o endereço docker --version
deve retornar um erro indicando que o Docker não está mais instalado.
Práticas recomendadas para o Docker no Ubuntu
O gerenciamento do Docker exige manutenção contínua, pois é sua responsabilidade remover recursos não utilizados e monitorar o desempenho.
Nesta seção, abordaremos duas tarefas essenciais de limpeza que você deve realizar regularmente ao executar o Docker no Ubuntu.
Limpar regularmente os recursos do Docker
Com o tempo, imagens, contêineres, redes e volumes do Docker não utilizados podem se acumular, consumindo um espaço significativo em disco.
A limpeza desses recursos é conhecida como podaembora uma explicação detalhada esteja fora do escopo deste artigo.
Lembre-se deste comando - ele removerá todos os contêineres, imagens, volumes e redes não utilizados de uma só vez:
docker system prune -a -f
Imagem 10 - Poda de recursos
Recuperamos apenas 10 kB, mas em um ambiente mais "sério", esse comando pode liberar dezenas de gigabytes de espaço em disco.
Proteja sua instalação do Docker
Já abordamos dois tópicos importantes de segurança: manter o Docker atualizado e gerenciar as permissões de superusuário.
Além disso, aqui estão mais algumas etapas para aumentar a segurança do Docker no Ubuntu:
- Limite os privilégios do contêiner: Evite executar contêineres com o sinalizador
--privileged
sempre que possível, pois ele desativa muitas verificações de segurança que isolam os contêineres do sistema host. - Use somente imagens oficiais e confiáveis: Não obtenha imagens de registros de terceiros não verificados. Use fontes confiáveis, como o Docker Hub e registros privados.
- Habilite o Docker Content Trust (DCT): A definição dessa variável de ambiente garante que somente imagens assinadas e verificadas sejam usadas.
Monitorar o desempenho do Docker
A CLI do Docker inclui ferramentas avançadas para ajudar você a monitorar o desempenho do contêiner e identificar possíveis problemas.
Antes de mergulhar neles, vamos modificar o arquivo app.py
para mantê-lo em execução após o início do contêiner:
import time
time.sleep(10000)
print("Hello from Docker running on Ubuntu!")
O motivo é simples: precisamos de um contêiner em execução para monitorar seu desempenho.
Vamos começar com o comando ps
. Simplificando, ele lista todos os contêineres em execução no momento:
docker ps
Imagem 11 - Executando contêineres do Docker
Embora a saída não revele muito, o campo CONTAINER ID
é crucial para uma inspeção mais detalhada.
Agora, vamos explorar o comando stats
, que exibe o uso de recursos em tempo real, incluindo CPU, memória e consumo de rede para todos os contêineres em execução:
docker stats
Imagem 12 - Estatísticas de contêineres
Se você precisar de uma análise detalhada do uso e da configuração dos recursos de um contêiner, use o comando inspect
.
Basta fornecer o ID do contêiner:
docker inspect <container_id>
Imagem 13 - Detalhes do contêiner
Se você estiver enfrentando problemas com um contêiner do Docker, o comando logs
pode ajudar a diagnosticar o problema e, possivelmente, identificar sua causa.
Ele também requer o ID do contêiner:
docker logs <container_id>
Imagem 14 - Registros de contêineres
Às vezes, você pode precisar se conectar diretamente a um contêiner em execução. Se você souber o ID do contêiner, isso é simples:
docker exec -it <container_id> bash
Imagem 15 - Registros de contêineres
O comando anterior abre um shell dentro do contêiner do Docker especificado, permitindo que você acesse ou modifique arquivos diretamente.
Resumindo o Docker no Ubuntu
Hoje, você aprendeu a instalar, configurar e gerenciar o Docker no Ubuntu.
Se tiver seguido todas as etapas, você terá o Docker em execução no seu sistema, que é iniciado automaticamente na inicialização e não requer permissões de superusuário para gerenciar contêineres. Você também aprendeu a verificar a instalação do Docker, a executar contêineres de teste e até mesmo a criar seu primeiro aplicativo personalizado em contêineres Python.
É muito, mas é apenas o começo. Há muito mais nessa história de conteinerização, e é altamente recomendável que você consulte nossos recursos oficiais para se tornar proficiente no Docker:
Perguntas frequentes
Para que o Docker é usado?
O Docker é usado para automatizar a implantação de aplicativos em contêineres leves, que empacotam um aplicativo e suas dependências em um ambiente isolado que é reproduzível e independente do ambiente do host.
O Ubuntu é bom para o Docker?
O Ubuntu é uma ótima opção para executar o Docker, tanto na versão para desktop quanto para servidor. É uma distribuição Linux popular e estável, adorada pelos desenvolvedores. Dito isso, você também pode executar o Docker em outras distribuições do Linux.
Por que eu deveria usar o Docker?
O Docker oferece os benefícios de um ambiente consistente para desenvolvimento/teste/produção, implantação mais rápida de aplicativos e dimensionamento mais fácil, tudo isso enquanto facilita a movimentação do aplicativo entre diferentes ambientes e sistemas.
Qual é a diferença entre o Docker e as máquinas virtuais?
Os contêineres do Docker compartilham o kernel e os recursos do sistema operacional do sistema host, tornando-os leves e mais rápidos do que as máquinas virtuais. As VMs executam sistemas operacionais separados e exigem mais recursos do sistema.
Como posso saber se o Docker está funcionando corretamente?
Você pode começar verificando se o Docker está instalado executando o comando docker –version
. Além disso, a execução de um contêiner de teste simples, como hello-world
, verificará se o Docker está funcionando.
Saiba mais sobre o Docker com estes cursos!
curso
Intermediate Docker
programa
Containerization and Virtualization

blog
O guia completo da certificação Docker (DCA) para 2024
blog
Tutorial: Como instalar o Python no macOS e no Windows
blog
Jupyter e R Markdown: Notebooks com R
tutorial
Como instalar e configurar o MySQL no Docker
tutorial
Como escrever um script Bash: um tutorial simples de scripts Bash
tutorial
Tutorial de instalação do Anaconda no Windows

DataCamp Team
5 min