DEV Community 👩‍💻👨‍💻

Cover image for Instalação Completa do Docker no Ubuntu LTS
Anderson Leite
Anderson Leite

Posted on

Instalação Completa do Docker no Ubuntu LTS

Nesse post quero compartilhar uma maneira de instalar o Docker no Ubuntu em 8 passos simples. Que nos dará acesso à sua interface de linha de comando (CLI).

Vamos aos passos

  1. Desinstale versões anteriores
  2. Instale as dependências iniciais
  3. Adicione a chave pública do repositório Docker em sua máquina
  4. Adicione o repositório remoto na lista do apt
  5. Instale o Docker no Linux
  6. Adicione seu usuário ao grupo de usuários Docker
  7. Inicie o Daemon do Docker
  8. Valide a instalação

Aqui, vamos fazer a instalação do Docker por meio do comando apt-get, considerando uma máquina com Ubuntu LTS 64-bit (amd64).

Se quiser ver as outras opções de instalação ou se estiver usando outro sistema operacional, consulte a documentação completa.

⚠️ Se você enfrentar algum problema ou comportamento diferente em algum dos passos, consulte o guia oficial.

Passo 1: Desinstale versões anteriores

Se você já possui uma versão do Docker instalada em sua máquina e deseja refazer o processo para atualizar ou corrigir um problema, primeiro remova os pacotes da versão que está na sua máquina.

Para fazer isso, use o seguinte comando no terminal:

sudo apt-get remove docker* containerd runc
Enter fullscreen mode Exit fullscreen mode

Se nenhum dos pacotes estiver instalado, este comando retornará o erro E: Impossível encontrar o <nome-do-pacote>. Neste caso, é só prosseguir com a instalação.

Passo 2: Instale as dependências iniciais

Para permitir que o apt-get busque arquivos por HTTPS, instale os seguintes pacotes. Precisamos deles para prosseguir com a instalação:

sudo apt-get install \
apt-transport-https \
ca-certificates \
curl \
gnupg \
lsb-release
Enter fullscreen mode Exit fullscreen mode

Passo 3: Adicione a chave pública do repositório Docker em sua máquina

Para adicionar a chave oficial GPG* do repositório Docker, execute o seguinte comando:

curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
Enter fullscreen mode Exit fullscreen mode

⚠️ Essa etapa é necessária porque precisamos obter uma chave pública do servidor Docker Inc para garantir que todos os pacotes de dados obtidos da Internet sejam assinados com essa chave, evitando assim possíveis ataques à segurança.

Se tudo correr bem, você não terá nenhum feedback visual.

Passo 4: Adicione o repositório remoto na lista do apt

Para finalmente adicionar o repositório oficial do Docker no apt, execute o seguinte comando:

echo \
"deb [arch=amd64 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
Enter fullscreen mode Exit fullscreen mode

Observe que adicionamos o repositório stable (em $(lsb_release -cs) stable), isto significa que teremos somente o repositório com as versões estáveis do Docker.

Em distribuições baseadas no Ubuntu, como o Linux Mint, pode ser necessário substituir o comando $(lsb_release -cs) por uma versão do Ubuntu compatível com esse sistema.
Exemplo: se você estiver usando o Linux Mint Tessa, altere o valor para bionic.

⚠️ Observação importante: não é garantido que o Docker seja executado em sistemas que não atendam aos requisitos do sistema operacional.

Passo 5: Instale o Docker no Linux

Agora, sim, vamos à instalação do Docker!

  • Primeiro, vamos garantir que os índices dos pacotes do apt estão atualizados, já que adicionamos um novo repositório:
sudo apt-get update
Enter fullscreen mode Exit fullscreen mode
  • Entao vamos instalar a última versão estável do Docker Engine - Community, que é uma versão mantida pela própria comunidade, já que o Docker é open source. Para isso, execute no terminal:
sudo apt-get install docker-ce docker-ce-cli containerd.io
Enter fullscreen mode Exit fullscreen mode

Passo 6: Adicione seu usuário ao grupo de usuários Docker

Para evitar o uso de sudo em todos os comandos Docker que formos executar, vamos dar as devidas permissões ao nosso usuário.

  • Primeiro crie um grupo chamado docker:
sudo groupadd docker
Enter fullscreen mode Exit fullscreen mode

Caso apareça uma mensagem: groupadd: grupo 'docker' já existe, é só prosseguir.

  • Em seguida, adicione seu usuário a este novo grupo com o seguinte comando:
sudo usermod -aG docker $USER
Enter fullscreen mode Exit fullscreen mode

⚠️ Atenção execute o comando exatamente como acima, com distinção entre maiúsculas e minúsculas.

  • Para ativar as alterações no grupo, você pode sair e fazer login novamente em sua sessão ou executar o seguinte comando no terminal:
newgrp docker
Enter fullscreen mode Exit fullscreen mode

⚠️ Se você encontrar algum problema após executar este comando, reinicie seu dispositivo. Prossiga para a próxima etapa após reiniciar

Passo 7: Inicie o Daemon do Docker

Daemon é um serviço que fica no background, ou seja, é um serviço que sempre está em execução e aguarda por comandos feitos por meio do CLI. Entretanto, para que este serviço fique sempre disponível, precisamos ativá-lo, até mesmo após reiniciarmos nosso computador.

  • Para consultar o status atual do daemon do Docker, execute o seguinte comando:
sudo systemctl status docker
Enter fullscreen mode Exit fullscreen mode
  • O comando acima deve retornar um pequeno relatório sobre o serviço, incluindo seu status de execução:
● docker.service - Docker Application Container Engine
     Loaded: loaded (/lib/systemd/system/docker.service; enabled; vendor preset: enabled)
     Active: inactive (dead) since Thu 2022-11-23 19:35:27 -03; 2s ago
TriggeredBy: ● docker.socket
       Docs: https://docs.docker.com
    Process: 2034 ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock (code=exited, status=0>
   Main PID: 2034 (code=exited, status=0/SUCCESS
Enter fullscreen mode Exit fullscreen mode
  • Caso o parâmetro Active esteja como stop/waiting ou, no nosso caso, como inactive, rode o comando start para iniciá-lo:
sudo systemctl start docker
Enter fullscreen mode Exit fullscreen mode

Quando o status for consultado novamente, o processo deve estar como start/running/active.

  • Agora, vamos habilitar o daemon do Docker para iniciar durante o boot:
sudo systemctl enable docker
Enter fullscreen mode Exit fullscreen mode

Passo 8: Valide a instalação

Para validar se tudo ocorreu como deveria na instalação, vamos executar o hello world do Docker:

docker run hello-world
Enter fullscreen mode Exit fullscreen mode

O terminal deve retornar uma mensagem conforme o gif a seguir:

Hello from Docker

Tudo certo, temos o Docker instalado para utilizarmos! 🐋

Referências:

Top comments (0)

Timeless DEV post...

How to write a kickass README

Arguably the single most important piece of documentation for any open source project is the README. A good README not only informs people what the project does and who it is for but also how they use and contribute to it.

If you write a README without sufficient explanation of what your project does or how people can use it then it pretty much defeats the purpose of being open source as other developers are less likely to engage with or contribute towards it.