- Informações do Sistema
Verifique a versão e os detalhes do kernel do seu sistema Ubuntu.
# Saída do comando uname -a
$ uname -a
Linux myhost 5.3.0-45-generic #37~18.04.1-Ubuntu SMP Fri Mar 27 15:58:10 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux
# Informações do arquivo version
$ cat /proc/version
Linux version 5.3.0-45-generic (buildd@lcy01-amd64-027) (gcc version 7.5.0 (Ubuntu 7.5.0-3ubuntu1~18.04)) #37~18.04.1-Ubuntu SMP Fri Mar 27 15:58:10 UTC 2020
- Instalação do Docker
2.1. Permissões de Usuário
Configure permissões de sudo sem senha para seu usuário de operação, facilitando a execução de comandos administrativos.
# Adicione a entrada no sudoers (substitua 'seu_usuario')
sudo visudo -f /etc/sudoers.d/seu_usuario
# Insira a linha: seu_usuario ALL=(ALL) NOPASSWD:ALL
# Ou edite diretamente com precaução
sudo chmod u+w /etc/sudoers
# Use um editor para adicionar a permissão
sudo chmod u-w /etc/sudoers
2.2. Configuração de Repositórios
Altere o repositório padrão do apt para um espelho local, como o da Universidade de Ciência e Tecnologia da China (USTC), para downloads mais rápidos.
# Crie um backup do arquivo sources.list original
sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak
# Substitua o domínio do repositório padrão pelo espelho
sudo sed -i 's|archive.ubuntu.com|mirrors.ustc.edu.cn|g' /etc/apt/sources.list
2.3. Procedimento de Instalação do Docker Engine
Siga estas etapas para instalar a versão estável mais recente do Docker CE.
# Remova versões antigas do Docker (opcional para instalação limpa)
sudo apt-get remove docker docker-engine docker.io containerd runc
# Atualize a lista de pacotes do apt
sudo apt-get update
# Instale pacotes para permitir o uso de repositórios HTTPS
sudo apt-get install -y \
apt-transport-https \
ca-certificates \
curl \
software-properties-common
# Adicione a chave GPG oficial do Docker
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
# Adicione o repositório estável do Docker CE ao seu sistema
sudo add-apt-repository \
"deb [arch=amd64] https://download.docker.com/linux/ubuntu \
$(lsb_release -cs) \
stable"
# Atualize novamente o cache do apt e instale o Docker CE
sudo apt-get update
sudo apt-get install -y docker-ce
# Habilite o serviço do Docker para iniciar na inicialização e inicie-o
sudo systemctl enable docker
sudo systemctl start docker
# Permita que seu usuário atual execute comandos Docker sem sudo
sudo usermod -aG docker ${USER}
# Ative as novas permissões no shell atual
newgrp docker
2.4. Verificação da Instalação
Confirme que a instalação foi bem-sucedida verificando a versão do cliente e do servidor do Docker.
$ docker version
# A saída mostrará detalhes do cliente e do servidor, por exemplo:
# Client: Docker Engine - Community
# Version: 20.10.x
# Server: Docker Engine - Community
# Engine:
# Version: 20.10.x
# API version: 1.41
- Aceleração de Imagens com Espelhos
Para usuários na China, configurar um espelho de registro pode acelerar significativamente o download de imagens. Edite ou crie o arquivo de configuração do daemon do Docker.
# Crie o diretório de configuração se não existir
sudo mkdir -p /etc/docker
# Crie o arquivo de configuração com o endereço do espelho
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["https://registry.docker-cn.com", "https://docker.mirrors.ustc.edu.cn"]
}
EOF
# Recarregue as configurações do systemd e reinicie o Docker
sudo systemctl daemon-reload
sudo systemctl restart docker
- Teste de Funcionamento
Execute um container de teste simples para validar a instalação completa.
# Execute a imagem de teste oficial
$ docker run --rm hello-world
# A mensagem de saída confirma o contato com o daemon, o download da imagem e a execução do container.
# Liste as imagens disponíveis localmente
$ docker images
# REPOSITORY TAG IMAGE ID CREATED SIZE
# hello-world latest feb5d9fea6a5 6 months ago 13.3kB
# Liste todos os containers (ativos e parados)
$ docker ps -a
# CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
# a1b2c3d4e5f6 hello-world "/hello" 30 seconds ago Exited (0) 29 seconds ago festive_saha
- Instalação do Docker Compose
Docker Compose é uma ferramenta para definir e executar aplicações Docker com múltiplos containers.
# Baixe o binário do Docker Compose
sudo curl -L "https://github.com/docker/compose/releases/latest/download/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
# Torne o binário executável
sudo chmod +x /usr/local/bin/docker-compose
# Verifique a instalação
$ docker-compose --version
# docker-compose version 2.x.x, build xxxxxxx
- Solução de Problemas Comuns
6.1. Processos do Apt Bloqueados
Se comandos do apt falharem com erros de lock, siga este procedimento.
# Encontre e mate processos do apt travados
sudo kill -9 $(ps aux | grep -i '[a]pt' | awk '{print $2}')
# Remova os arquivos de lock do sistema
sudo rm -f /var/lib/dpkg/lock
sudo rm -f /var/lib/dpkg/lock-frontend
sudo rm -f /var/cache/apt/archives/lock
sudo rm -f /var/lib/apt/lists/lock
6.2. Erros de Conexão ao Docker Hub
Se comandos como docker search ou docker pull falharem com erros de DNS ou timeout, considere estas soluções:
- Configurar DNS no Host: Adicione uma entrada no
/etc/hostsapontandoregistry-1.docker.iopara um IP válido, encontrado vianslookup. - Alterar o Servidor DNS do Sistema: Modifique o arquivo
/etc/resolv.confpara usar servidores públicos (ex: 8.8.8.8, 114.114.114.114). - Usar Espelhos do Docker: Garanta que a configuração do
registry-mirrorsno/etc/docker/daemon.json(descrita na seção 3) esteja ativa.
Referências
- Documentação Oficial: Install Docker Engine on Ubuntu
- Guia Comunitário: Runoob - Docker Ubuntu