A conteinerização transformou a implantação de aplicativos ao empacotar software em ambientes isolados e leves que garantem consistência entre sistemas diferentes. Docker no Ubuntu Server é uma combinação poderosa que simplifica esse processo, permitindo que desenvolvedores e administradores de sistemas criem, entreguem e executem aplicativos sem problemas. Como a principal plataforma de conteinerização do setor, o Docker simplifica os fluxos de trabalho e melhora a escalabilidade do desenvolvimento de aplicativos modernos.
Neste guia, vamos orientá-lo nas etapas para instalar o Docker no Ubuntu Server e executar seu primeiro aplicativo conteinerizado. Quer você seja novo no Docker ou esteja buscando otimizar seu processo de implantação, este tutorial ajudará você a começar a usar a conteinerização no Ubuntu Server.
Artigos anteriores:
01. Introdução ao Ubuntu Server – SysOSX: AI & Cloud
02. Como configurar seu primeiro servidor Ubuntu: guia para iniciantes – SysOSX: AI & Cloud
03. Dominando a linha de comando do Linux para Ubuntu Server – SysOSX: AI & Cloud
04. Gerenciamento de usuários e permissões no Ubuntu Server: um guia completo – SysOSX: AI & Cloud
05. Noções básicas de rede para Ubuntu Server: um guia completo – SysOSX: AI & Cloud
06. Instalação e gerenciamento de software no Ubuntu Server: um guia completo – SysOSX: AI & Cloud
07.Aplicação de patches e atualização do Ubuntu Server: um guia completo – SysOSX: AI & Cloud
08. Proteja seu servidor Ubuntu: etapas práticas de reforço e proteção – SysOSX: AI & Cloud
09. Auditoria e registro de logs do servidor Ubuntu
11. Registro centralizado para servidores Ubuntu: um guia indispensável – SysOSX: AI & Cloud
12. Auditoria e conformidade para Ubuntu Server: práticas recomendadas – SysOSX: AI & Cloud
14. Hospede vários sites em um único servidor Ubuntu: dicas úteis – SysOSX: AI & Cloud
15. Gerenciamento de armazenamento e discos no Ubuntu Server: guia simples – SysOSX: AI & Cloud
18. Como configurar e usar LVM no Ubuntu Server: um guia completo – SysOSX: AI & Cloud
19. Introdução à virtualização com KVM: guia para iniciantes do Ubuntu Server – SysOSX: AI & Cloud
Índice
Pré-requisitos
Antes de instalar o Docker, verifique se o servidor Ubuntu atende a estes requisitos:
- Ubuntu 20.04 LTS ou posterior (64 bits).
- privilégios sudo ou acesso root.
- Conexão estável com a internet para baixar pacotes.
Etapa 1: Instalar o Docker no Ubuntu Server
Atualizar pacotes do sistema
sudo apt update && sudo apt upgrade -y
Instalar as dependências necessárias
sudo apt install apt-transport-https ca-certificates curl software-properties-common -y
Adicionar a chave GPG oficial do Docker
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
Configurar o repositório do Docker
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
Instalar o Docker Engine
sudo apt update
sudo apt install docker-ce docker-ce-cli containerd.io -y
Verificar a instalação
sudo docker run hello-world
Se for bem-sucedido, você verá uma mensagem de confirmação como a abaixo.

Etapa 2: Gerenciar o Docker como usuário não root
Por padrão, o Docker requer privilégios de sudo . Para evitar digitar sudo repetidamente:
- Criar um grupo do Docker (se ainda não existir):
sudo groupadd docker - Adicione seu usuário ao grupo:
sudo usermod -aG docker $USER - Aplicar as alterações:
newgrp docker
Etapa 3: Executar seu primeiro contêiner
Inicie um servidor web Nginx em segundos:
docker run -d -p 8080:80 --name my-nginx nginx
-d: Executar em modo destacado.-p 8080:80: Mapear a porta 8080 do host para a porta 80 do contêiner.--name: Atribuir um nome personalizado ao contêiner.
Verificar o acesso:
curl http://localhost:8080

Etapa 4: Comandos essenciais do Docker
| Comando | Descrição |
|---|---|
docker ps | Listar contêineres em execução |
docker images | Ver imagens baixadas |
docker stop <container-id> | Parar um contêiner |
docker rm <container-id> | Remover um contêiner |
docker rmi <image-id> | Excluir uma imagem |
Etapa 5: Automatizar fluxos de trabalho com o Docker Compose
Para aplicativos com vários contêineres, use Docker Compose:
- Instalar o Docker Compose:
sudo apt install docker-compose -y
- Crie um arquivo
docker-compose.yml:
version: '3'
services:
web:
image: nginx
ports:
- "8080:80"
- Iniciar a pilha:
docker-compose up -d

Práticas recomendadas para o Docker no Ubuntu
- Atualizar o Docker regularmente:
sudo apt update && sudo apt upgrade docker-ce -y
- Limpar recursos não utilizados:
docker system prune -a
- Use imagens oficiais do Docker Hub para segurança e confiabilidade.
Solução de problemas comuns
- Permissão negada: Certifique-se de que seu usuário esteja no
dockergrupo. - Conflitos de porta: Verifique se outros serviços estão usando a mesma porta.
- Erros ao baixar imagens: Verifique a conectividade com a internet e a ortografia do nome da imagem.
Docker versus outras ferramentas de conteinerização
Embora o Docker domine o cenário da conteinerização, conhecer as alternativas ajuda a escolher a ferramenta certa para o seu caso de uso:
| Ferramenta | Tipo | Principais recursos | Ideal para |
|---|---|---|---|
| Docker | Contêineres de aplicativos | – Foco em empacotamento portátil e centrado em aplicativos<br>- Ecossistema enorme (Docker Hub)<br>- CLI e Compose simples | Desenvolvedores, microsserviços, fluxos de trabalho de CI/CD |
| LXD | Contêineres de sistema | – Ambientes completos de sistema operacional (como VMs leves)<br>- Integração estreita com LXC/Linux<br>- Gerenciamento avançado de recursos | Infraestrutura como serviço, substituição de hipervisor |
| Podman | Contêineres de aplicativos | – Arquitetura sem daemon<br>- Sem root por padrão<br>- CLI compatível com Docker | Cargas de trabalho com foco em segurança, computação de borda |
| containerd | Runtime de contêiner | – Runtime de baixo nível (usado por Docker/Kubernetes)<br>- Design minimalista<br>- Foco na escalabilidade | Clusters do Kubernetes, implantações em larga escala |
| CRI-O | Runtime do Kubernetes | – Otimizado para CRI do Kubernetes<br>- Leve e seguro<br>- Com suporte da Red Hat | Clusters OpenShift/OKD, operações nativas do Kubernetes |
Por que o Docker ainda se destaca
- Amigável para iniciantes: Fluxo de trabalho simplificado para desenvolvimento e teste de aplicativos.
- Portabilidade: Os contêineres são executados de forma idêntica no macOS, Windows e Linux.
- Suporte da comunidade: Mais de 8 milhões de imagens do Docker Hub e documentação abrangente.
Quando considerar alternativas
- LXD: Precisa de isolamento completo do SO (por exemplo, hospedar vários serviços com usuários separados).
- Podman: Prioriza a segurança (por exemplo, cargas de trabalho governamentais ou de saúde).
- containerd/CRI-O: Criar infraestrutura nativa do Kubernetes.
Conclusão
Seguindo este guia, você instalou o Docker no Ubuntu Server e implantou seu primeiro aplicativo conteinerizado. A flexibilidade do Docker o torna indispensável para DevOps, desenvolvimento nativo da nuvem e ambientes híbridos. Explore recursos avançados como Docker Swarm ou integração com o Kubernetes para escalar suas cargas de trabalho de contêineres.
Referência: Documentação oficial do Docker
E agora? Prepare-se para explorar o LXD para contêineres Linux
Agora que você domina o Docker para conteinerização de aplicativos, vamos nos aprofundar no mundo dos contêineres de sistema Linux! Fique atento para nosso próximo guia:
2 thoughts on “20. How to Install Docker on Ubuntu Server: A Step-by-Step Guide to Containerization”