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.