Pular para o conteúdo principal

Instalar o Docker no Ubuntu: Da configuração ao primeiro contêiner

Você só precisa de alguns comandos de uma nova instalação do sistema operacional para executar seu primeiro aplicativo em contêiner. Saiba como fazer isso com este guia definitivo de configuração do Docker Ubuntu.
Actualizado 5 de fev. de 2025  · 20 min de leitura

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:

Detalhes do sistema operacional

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:

Resultados da instalação do Docker

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

Versão instalada do Docker

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:

Ativando o serviço do Docker na inicialização

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

Status do serviço do 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:

Exemplo de hello world do Docker

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:

Conteúdo do aplicativo Python de demonstração

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.

Criando uma imagem do Docker

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

Executando um script Python no Docker

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

Poda de recursos

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

Execução de contêineres do Docker

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

Estatísticas de contêineres

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>

Detalhes do contêiner

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>

Terminal mostrando registros de contêineres

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

Terminal mostrando registros de contêineres

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.


Dario Radečić's photo
Author
Dario Radečić
LinkedIn
Cientista de dados sênior baseado na Croácia. Principal redator técnico com mais de 700 artigos publicados, gerando mais de 10 milhões de visualizações. Autor do livro Automação do aprendizado de máquina com TPOT.
Temas

Saiba mais sobre o Docker com estes cursos!

curso

Introduction to Docker

4 hr
24.5K
Gain an introduction to Docker and discover its importance in the data professional’s toolkit. Learn about Docker containers, images, and more.
Ver DetalhesRight Arrow
Iniciar curso
Ver maisRight Arrow
Relacionado

blog

O guia completo da certificação Docker (DCA) para 2024

Libere seu potencial no Docker e na ciência de dados com nosso guia abrangente. Explore as certificações do Docker, os caminhos de aprendizado e as dicas práticas.
Matt Crabtree's photo

Matt Crabtree

8 min

blog

Tutorial: Como instalar o Python no macOS e no Windows

Saiba como instalar o Python em sua máquina pessoal com este tutorial passo a passo. Se você é um usuário do Windows ou do macOS, descubra vários métodos para começar a usar o Python em sua máquina.
Richie Cotton's photo

Richie Cotton

14 min

blog

Jupyter e R Markdown: Notebooks com R

Saiba como instalar, executar e usar o R com o Jupyter Notebook e o R Notebook do RStudio, incluindo dicas e alternativas
Karlijn Willems's photo

Karlijn Willems

20 min

tutorial

Como instalar e configurar o MySQL no Docker

Saiba como instalar e configurar o banco de dados MySQL dentro de contêineres do Docker. O tutorial inclui conceitos como conexão com servidores MySQL, execução de clientes MySQL para conexão com contêineres e assim por diante.
Bex Tuychiev's photo

Bex Tuychiev

12 min

tutorial

Como escrever um script Bash: um tutorial simples de scripts Bash

Descubra os fundamentos da criação de scripts Bash e aprenda a escrever um script Bash.
Kurtis Pykes 's photo

Kurtis Pykes

5 min

tutorial

Tutorial de instalação do Anaconda no Windows

Este tutorial demonstrará como você pode instalar o Anaconda, um poderoso gerenciador de pacotes, no Microsoft Windows.
DataCamp Team's photo

DataCamp Team

5 min

Ver maisVer mais