Instale o Docker: Guia Completo para Ubuntu, CentOS, Debian e Windows

Um guia detalhado para configurar o Docker no seu sistema operacional preferido.

O Docker é uma iniciativa de código aberto que simplifica a criação, teste, implantação e gerenciamento de aplicativos em contêineres portáteis e autossuficientes. Geralmente, as imagens de contêiner incorporam todos os recursos necessários para a execução de um aplicativo.

Atualmente, o Docker se destaca como uma ferramenta popular para a implementação e gestão de aplicativos em contêineres, resolvendo problemas de compatibilidade. Esta tecnologia possibilita a instalação de aplicativos e serviços em uma variedade de computadores, independentemente do hardware e sistemas operacionais subjacentes. Consequentemente, você pode executar essas imagens em diversos sistemas, desde que o Docker esteja instalado. Imagens comuns incluem Nginx, MariaDB, WordPress, entre outros.

O Docker apresenta diferenças significativas em relação à VM tradicional.

Neste tutorial, você aprenderá o processo de instalação do Docker nos seguintes sistemas operacionais:

  • Ubuntu
  • Debian
  • CentOS
  • Windows

Em geral, as etapas são semelhantes para cada sistema operacional, embora possam existir pequenas variações entre as diferentes versões.

Métodos de instalação do Docker

Existem três abordagens principais para a instalação do Docker, cuja escolha depende do cenário e ambiente, detalhados abaixo:

  • Utilizando os repositórios Docker: Método recomendado para instalações online, fácil de instalar e atualizar.
  • Download, instalação e atualizações manuais: Ideal para computadores offline, sem acesso à internet.
  • Empregando scripts automatizados: Adequado para ambientes de desenvolvimento e teste.

Este guia abordará a instalação utilizando os repositórios Docker. Você aprenderá a instalar e atualizar a ferramenta a partir dos repositórios oficiais do Docker. Embora seja possível baixar arquivos do repositório do sistema operacional, este pode não apresentar as versões mais recentes, justificando o uso da fonte oficial do Docker sempre que possível.

Instalação do Docker no Ubuntu

Neste guia, utilizaremos o Ubuntu 18.04.

Pré-requisitos

Etapa 1: Atualização do banco de dados local

Antes da instalação, atualize a lista de pacotes disponíveis.

sudo apt update

Etapa 2: Instalação de dependências para suporte a https

Instale pacotes que permitirão ao apt realizar transferências de arquivos via https.

sudo apt install apt-transport-https ca-certificates curl software-properties-common

Funções de cada comando:

  • apt-transport-https: Permite que o apt transfira dados e arquivos via https.
  • ca-certificates: Permite que o computador/navegador valide certificados de segurança.
  • curl: Utilitário para transferência de arquivos.
  • software-properties-common: Adiciona scripts para gestão de software.

Etapa 3: Adição da chave GPG do Docker

O próximo passo é adicionar a chave GPG, um recurso de segurança para garantir a autenticidade dos arquivos de instalação.

curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add –

Etapa 4: Configuração do repositório Docker

Nesta etapa, adicione o repositório Docker às fontes do apt com o comando abaixo.

sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu bionic stable"

Etapa 5: Atualização dos repositórios

Atualize o banco de dados com os pacotes Docker do repositório adicionado.

sudo apt update

Para confirmar a instalação a partir do repositório oficial do Docker, execute:

apt-cache policy docker-ce

O resultado deverá ser similar a este:

Resultado do apt-cache policy docker-ce

docker-ce:
  Installed: (none)
  Candidate: 5:19.03.5~3-0~ubuntu-bionic
  Version table:
 5:19.03.5~3-0~ubuntu-bionic 500
500 https://download.docker.com/linux/ubuntu bionic/stable amd64 Packages
 5:19.03.4~3-0~ubuntu-bionic 500
500 https://download.docker.com/linux/ubuntu bionic/stable amd64 Packages
 5:19.03.3~3-0~ubuntu-bionic 500

A saída indica que o docker-ce não está instalado. No entanto, o sistema operacional de destino e a versão do Docker são exibidos. As versões podem variar dependendo do momento da instalação.

Etapa 6: Instalação da versão mais recente do Docker

Após a confirmação, instale o Docker com o seguinte comando:

sudo apt install docker-ce

Isso instalará o Docker, iniciará o daemon e configurará a inicialização automática. Para verificar se o Docker está ativo e funcionando, execute:

sudo systemctl status docker

Se a instalação e execução forem bem-sucedidas, o comando exibirá um resultado semelhante a este:

    $ sudo systemctl status docker

● docker.service - Docker Application Container Engine
   Loaded: loaded (/lib/systemd/system/docker.service; enabled; vendor preset: e
   Active: active (running) since Sat 2019-12-14 07:46:40 UTC; 50s ago
 Docs: https://docs.docker.com
 Main PID: 2071 (dockerd)
Tasks: 8
   CGroup: /system.slice/docker.service
   └─2071 /usr/bin/dockerd -H fd:// --containerd=/run/containerd/contain

Essa saída indica que a instalação foi bem-sucedida e o Docker está ativo e em execução.

Instalando o Docker no CentOS

Pré-requisitos

  • Uma versão estável do CentOS 7
  • Usuário com privilégios sudo

A prática recomendada é usar a versão mais recente do pacote de instalação do Docker a partir do repositório oficial do Docker.

Etapa 1: Atualização do banco de dados de pacotes

O primeiro passo é atualizar o banco de dados de pacotes usando o comando:

sudo yum update

Etapa 2: Adição do repositório Docker e instalação do Docker

Após a atualização, adicionaremos o repositório oficial do Docker, baixaremos e instalaremos a versão mais recente do Docker. Use o seguinte comando para isso:

curl -fsSL https://get.docker.com/ | sh

Etapa 3: Inicialização do Docker e verificação da versão

Após a conclusão da instalação, inicie o daemon do Docker:

sudo systemctl start docker

Confirme se o Docker está em execução:

sudo systemctl status docker

O resultado deverá ser semelhante a este:

docker.service - Docker Application Container Engine
   Loaded: loaded (/usr/lib/systemd/system/docker.service; disabled; vendor preset: disabled)
   Active: active (running) since Mon 2019-12-09 09:54:50 UTC; 7s ago
 Docs: https://docs.docker.com
 Main PID: 9194 (dockerd)
Tasks: 8
   Memory: 44.0M
   CGroup: /system.slice/docker.service
   └─9194 /usr/bin/dockerd -H fd:// --containerd=/run/containerd/cont...

Instalando o Docker no Debian

Para garantir que você obtenha a versão mais recente, instale a partir do repositório oficial do Docker.

Pré-requisitos

  • Debian 9 em execução
  • Usuário com privilégios sudo

Etapa 1: Atualização do sistema

Primeiro, atualize a lista de pacotes instalados.

sudo apt update

Etapa 2: Instalação dos pacotes necessários para executar o apt em Https

sudo apt install apt-transport-https ca-certificates curl gnupg2 software-properties-common

Etapa 3: Adição da chave GPG

Agora é necessário adicionar a chave GPG do Docker ao sistema Debian, garantindo a validade dos downloads.

Para adicionar a chave GPG do repositório oficial do Docker, execute:

curl -fsSL https://download.docker.com/linux/debian/gpg | sudo apt-key add -

Etapa 4: Adição do repositório Docker às fontes do APT

Nesta etapa, você adicionará o repositório do Docker às fontes apt.

sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/debian $(lsb_release -cs) stable"

Etapa 5: Atualização do banco de dados de pacotes

Agora, vamos atualizar o banco de dados de pacotes com os pacotes Docker do repositório recém-adicionado.

sudo apt update

Etapa 6: Verificação da fonte de instalação

O comando abaixo garante que você está instalando o Docker do repositório oficial do Docker, em vez do Debian, que pode estar desatualizado.

apt-cache policy docker-ce

Isso retornará uma saída semelhante à abaixo. No entanto, o número da versão do Docker pode variar.

  Installed: (none)
  Candidate: 5:19.03.5~3-0~debian-stretch
  Version table:
 5:19.03.5~3-0~debian-stretch 500
500 https://download.docker.com/linux/debian stretch/stable amd64 Packages
 5:19.03.4~3-0~debian-stretch 500
500 https://download.docker.com/linux/debian stretch/stable amd64 Packages
 5:19.03.3~3-0~debian-stretch 500
500 https://download.docker.com/linux/debian stretch/stable amd64 Packages
 5:19.03.2~3-0~debian-stretch 500
500 https://download.docker.com/linux/debian stretch/stable amd64 Packages
..
..
..
17.03.1~ce-0~debian-stretch 500
500 https://download.docker.com/linux/debian stretch/stable amd64 Packages
 17.03.0~ce-0~debian-stretch 500
500 https://download.docker.com/linux/debian stretch/stable amd64 Packages

Como pode ser visto, o docker-ce ainda não está instalado. A saída indica que a instalação é do repositório oficial do Docker para o Debian 9 (stretch).

Etapa 7: Instalação do Docker

Agora estamos prontos para instalar o Docker usando o comando abaixo.

sudo apt install docker-ce

Isso instalará o Docker, iniciará o mecanismo e o configurará para sempre iniciar na inicialização. Após a conclusão da instalação, verifique se ela está em execução.

sudo systemctl status docker

Se instalado com sucesso, a saída indicará que o serviço está ativo e em execução.

Resultado:

● docker.service - Docker Application Container Engine
   Loaded: loaded (/lib/systemd/system/docker.service; enabled; vendor preset: e
   Active: active (running) since Mon 2019-12-09 11:48:32 UTC; 41s ago
 Docs: https://docs.docker.com
 Main PID: 17486 (dockerd)
   CGroup: /system.slice/docker.service
   └─17486 /usr/bin/dockerd -H fd:// --containerd=/run/containerd/contain

Instalação do Docker no Windows

Vamos analisar como instalar o Docker Enterprise Edition no Windows Server 2016.

Etapa 1: Instalação do módulo Docker Powershell

Abra o prompt de comando do PowerShell do Windows com uma conta administrativa e use o comando abaixo para instalar o módulo DockerMsftProvider. Este é um módulo do Docker Powershell para localizar, instalar e atualizar imagens do Docker.

Se estiver usando a conta de administrador, o comando aparecerá como:

PS C:UsersAdministrator> install-module -name DockerMsftProvider -Force

O resultado será semelhante ao seguinte:

NuGet provider is required to continue
PowerShellGet requires NuGet provider version ‘2.8.5.201’ or newer to interact with NuGet-based repositories. The NuGet
provider must be available in ‘C:Program FilesPackageManagementProviderAssemblies’ or
‘C:UsersAdministratorAppDataLocalPackageManagementProviderAssemblies’. You can also install the NuGet provider by
running ‘Install-PackageProvider -Name NuGet -MinimumVersion 2.8.5.201 -Force’. Do you want PowerShellGet to install
and import the NuGet provider now?
[Y] Yes [N] No [S] Suspend [?] Help (default is “Y”): y
Type Y for Yes

Etapa 2 Instalação do pacote do Docker

Com o módulo instalado, agora estamos prontos para instalar o pacote Docker.

PS C:UsersAdministrator>Install-Package Docker –Providername DockerMsftProvider –Force

Isso instalará o pacote do Docker no computador, mas não iniciará o serviço. Como tal, você deve reiniciar o computador para habilitar o recurso de contêiner.

PS C:UsersAdministrator>Restart-Computer

Após a reinicialização, verifique a instalação e a versão executando:

PS C:UsersAdministrator>docker-version

Resultado:

Client: Docker Engine – Enterprise
Version: 19.03.5
API version: 1.40
Go version: go1.12.12
Git commit: 2ee0c57608
Built: 11/13/2019 08:00:16
OS/Arch: windows/amd64
Experimental: false
Server: Docker Engine – Enterprise
Engine:
Version: 19.03.5
API version: 1.40 (minimum version 1.24)
Go version: go1.12.12
Git commit: 2ee0c57608
Built: 11/13/2019 07:58:51
OS/Arch: windows/amd64
Experimental: false

PS C:UsersAdministrator>

Para testar o Docker com uma imagem típica, execute o comando:

docker run hello-world:nanoserver-sac2016

Se instalado e funcionando corretamente, o comando deverá fornecer o seguinte resultado:

PS C:UsersAdministrator> docker run hello-world:nanoserver-sac2016

Hello from Docker!
This message shows that your installation appears to be working correctly.
To generate this message, Docker took the following steps:
1. The Docker client contacted the Docker daemon.
2. The Docker daemon pulled the “hello-world” image from the Docker Hub.
(windows-amd64, nanoserver-sac2016)
3. The Docker daemon created a new container from that image which runs the
executable that produces the output you are currently reading.
4. The Docker daemon streamed that output to the Docker client, which sent it
to your terminal.
To try something more ambitious, you can run a Windows Server container with:
PS C:> docker run -it mcr.microsoft.com/windows/servercore powershell
Share images, automate workflows, and more with a free Docker ID:
https://hub.docker.com/
For more examples and ideas, visit:
https://docs.docker.com/get-started/

Note que você deve utilizar uma imagem de contêiner do Windows por padrão. Caso precise executar imagens de contêiner Linux, use o Docker Daemon no modo experimental, disponível na versão desktop.

Conclusão

Espero que agora você entenda a facilidade de instalar o Docker. Após a instalação, explore para se familiarizar e, caso necessite de treinamento em vídeo, confira este curso.