Como instalar o Docker no Ubuntu e executar um contêiner Ubuntu (Guia passo a passo)

目次

1. O que é Docker e sua Relação com o Ubuntu

Docker é uma tecnologia de virtualização que empacota ambientes de execução de aplicativos em unidades chamadas “contêineres”, permitindo que eles sejam executados de forma consistente em diferentes servidores e computadores. Diferente das máquinas virtuais tradicionais, o Docker executa contêineres diretamente no SO do host, tornando-o significativamente mais leve e rápido.

Sistemas operacionais baseados em Linux, como o Ubuntu, são especialmente adequados para o Docker, o que explica por que o Docker é amplamente utilizado por empresas, desenvolvedores individuais e administradores de servidores. Isso ocorre porque o Ubuntu em si é de código aberto, amplamente adotado em ambientes de servidor, fácil de gerenciar com sistemas de pacotes e suportado por uma extensa documentação oficial.

Ao usar o Docker, você pode eliminar problemas comuns, como “funciona na minha máquina, mas não no servidor”. Seja em um PC de desenvolvimento ou em um servidor de produção, os contêineres do Docker permitem que você reproduza exatamente o mesmo ambiente em qualquer lugar. O Ubuntu também é oficialmente suportado pelo Docker, então há abundância de guias de instalação e recursos de solução de problemas.

Neste artigo, explicaremos claramente como instalar o Docker no Ubuntu e iniciar um contêiner Ubuntu. Se você é novo no Docker ou já tem experiência, este guia ajudará a reforçar seu conhecimento fundamental.

2. Ambiente Necessário e Pré-requisitos

Antes de usar o Docker no Ubuntu, vários pré-requisitos e verificações são necessários. Esta seção resume o ambiente necessário e os pontos importantes a confirmar com antecedência para garantir uma instalação suave.

Versão do Ubuntu

O Docker é recomendado para o Ubuntu 18.04 LTS ou posterior. Versões de Long Term Support (LTS), como Ubuntu 20.04 LTS, Ubuntu 22.04 LTS e Ubuntu 24.04 LTS, são especialmente bem suportadas. Versões mais antigas podem encontrar problemas de dependências ou pacotes, por isso é altamente recomendado usar a versão LTS mais recente.

Requisitos do Sistema

Embora o Docker seja leve, executar múltiplos contêineres ou usá-lo para desenvolvimento e testes requer recursos de sistema suficientes. As seguintes especificações mínimas são recomendadas:

  • Ubuntu de 64 bits (32 bits não é suportado)
  • CPU: 2 núcleos ou mais recomendados
  • Memória: Pelo menos 2 GB (4 GB ou mais recomendados)
  • Espaço em disco livre: Pelo menos 10 GB

Conexão com a Internet

Uma conexão com a internet é necessária para instalar o Docker e baixar imagens. A configuração inicial pode envolver o download de grandes quantidades de dados, por isso uma conexão estável é recomendada.

Privilégios de Usuário

Instalar o Docker e gerenciar configurações do sistema requer privilégios sudo (administrador). Se você tiver apenas permissões de usuário padrão, solicite acesso temporário ou assistência de um administrador.

Remoção de Pacotes Antigos do Docker

Se você instalou anteriormente pacotes como docker ou docker.io manualmente, é recomendado desinstalá-los para evitar conflitos.

sudo apt-get remove docker docker-engine docker.io containerd runc

Isso previne problemas potenciais causados por pacotes legados conflitantes.

Resumo

Após confirmar os pré-requisitos nesta seção, prossiga para as etapas de instalação e configuração nos capítulos seguintes.
Com uma preparação adequada, instalar o Docker no Ubuntu é um processo muito suave.

3. Instalando e Configurando o Docker Engine

Esta seção explica como instalar o Docker Engine no Ubuntu e realizar a configuração básica. Usar o repositório oficial do Docker garante que você obtenha a versão estável mais recente.

Adicionando o Repositório Oficial e Preparação

Primeiro, adicione o repositório oficial do Docker ao apt. Todas as etapas são realizadas no terminal.

  1. Instalar pacotes necessários
    sudo apt-get update
    sudo apt-get install \
        ca-certificates \
        curl \
        gnupg \
        lsb-release
    
  1. Adicionar a chave GPG
    sudo mkdir -p /etc/apt/keyrings
    curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
    
  1. Adicionar o repositório do Docker
    echo \
      "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \
      $(lsb_release -cs) stable" | \
      sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
    

Instalando o Docker Engine

Após adicionar o repositório, instale o Docker Engine.

sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io

Uma vez que a instalação esteja completa, verifique-a verificando a versão:

docker --version

Se você vir uma saída como Docker version 25.0.3, a instalação foi bem-sucedida.

Sobre o Docker Desktop (Opcional)

No Ubuntu, o Docker Engine geralmente é suficiente. O Docker Desktop para Linux também está disponível se você precisar de uma interface gráfica, mas para fluxos de trabalho baseados em CLI, o Docker Engine sozinho é mais do que suficiente.

Solução de Problemas na Instalação

Se você encontrar erros como “package not found”, verifique duas vezes a configuração do repositório e a configuração da chave GPG. Conflitos com pacotes antigos do Docker também podem causar problemas, então revise os passos de desinstalação se necessário.

4. Usando o Docker Sem sudo

Por padrão, os comandos do Docker requerem privilégios sudo. Exigir sudo para cada comando é inconveniente e pode ser arriscado se os comandos forem digitados incorretamente.
A abordagem recomendada é adicionar sua conta de usuário ao grupo docker, permitindo que você use o Docker com segurança sem sudo.

Adicionando um Usuário ao Grupo docker

  1. Adicione o usuário atual ao grupo docker
    sudo usermod -aG docker $USER
    
  1. Aplique as alterações

Faça logout e login novamente para aplicar a nova associação ao grupo.
Alternativamente, você pode aplicá-la imediatamente usando:

newgrp docker
  1. Verifique
    docker version
    

Notas de Segurança

Usuários no grupo docker têm privilégios elevados. Em ambientes multiusuário, gerencie a associação ao grupo docker com cuidado. Para uso pessoal ou de desenvolvimento, isso geralmente não é um problema.

5. Iniciando o Daemon do Docker e Habilitando Auto-Início

O Docker executa como um serviço em segundo plano chamado daemon do Docker (dockerd). Embora geralmente seja iniciado automaticamente após a instalação, entender como gerenciá-lo é importante.

Iniciar, Parar e Reiniciar o Docker

sudo systemctl start docker
sudo systemctl stop docker
sudo systemctl restart docker
sudo systemctl status docker

Habilitar ou Desabilitar Auto-Início na Inicialização

sudo systemctl enable docker
sudo systemctl disable docker

Verificando Logs

journalctl -u docker

6. Iniciando um Contêiner Ubuntu

Esta seção explica como realmente iniciar um contêiner Ubuntu no Docker.

Baixando a Imagem Ubuntu

docker pull ubuntu:22.04

Executando um Contêiner Ubuntu

docker run -it --name myubuntu ubuntu:22.04 /bin/bash

Executando em Segundo Plano

docker run -d --name myubuntu ubuntu:22.04 tail -f /dev/null

Parando e Reiniciando Contêineres

docker stop myubuntu
docker start myubuntu

Verificando o Status do Contêiner

docker ps
docker ps -a

7. Comandos Essenciais do Docker para Gerenciamento de Contêineres

Esta seção resume comandos do Docker comumente usados para operações diárias.

Listagem de Contêineres

docker ps
docker ps -a

Iniciar, Parar, Reiniciar

docker start [container]
docker stop [container]
docker restart [container]

Acessando Contêineres

docker exec -it [container] /bin/bash

Removendo Contêineres e Imagens

docker rm [container]
docker rm -f [container]
docker images
docker rmi [image]

Logs e Uso de Disco

docker logs [container]
docker system df

8. Solução de Problemas e Questões Frequentes

Esta seção cobre problemas comuns do Docker e como resolvê-los.

Não é Possível Conectar ao Daemon do Docker

Certifique-se de que o Docker está executando e que seu usuário tem as permissões adequadas.

Conflitos de Pacotes

sudo apt-get remove docker docker-engine docker.io containerd runc

Falhas no Início do Contêiner

Verifique os nomes das imagens, memória disponível e espaço em disco.

9. Resumo e Próximos Passos

Este artigo abordou a instalação do Docker no Ubuntu e a execução de contêineres Ubuntu, desde conceitos básicos até uso prático.

Próximos Passos

  • Construindo imagens personalizadas com Dockerfile
  • Gerenciando múltiplos contêineres com Docker Compose
  • Usando volumes e redes
  • Explorando orquestração de contêineres com Kubernetes

10. Perguntas Frequentes

Esta seção responde a perguntas frequentes relacionadas ao Docker no Ubuntu.

O Docker pode ser usado tanto no Ubuntu Desktop quanto no Server?

Sim. O Ubuntu Server é frequentemente preferido para produção devido ao menor uso de recursos.

O Docker Desktop é necessário?

Não. Apenas o Docker Engine é suficiente no Ubuntu.

O que é o modo rootless?

O modo rootless permite que o Docker execute sem privilégios de root, melhorando a segurança com algumas limitações.

Como persisto dados?

docker run -v /host/path:/container/path ubuntu:22.04

Como faço para iniciar contêineres automaticamente?

docker run --restart=unless-stopped -d ubuntu:22.04
年収訴求