Docker CE não é oficialmente suportado no Red Hat Enterprise Linux (RHEL) 8 ou no CentOS 8. A forma oficialmente recomendada da Red Hat para gerenciar containers no RHEL 8 e no CentOS 8 é o Podman. Podman é basicamente um substituto para o Docker no RHEL 8 e no CentOS 8. As imagens do Docker são compatíveis com o Podman. Portanto, mudar para Podman não deve ser muito difícil.
Anyway, este artigo não é sobre Podman. É sobre ter o Docker instalado no CentOS 8. Se você realmente não quer mudar para Podman e continuar usando o Docker na sua máquina RHEL 8 ou CentOS 8, então este artigo é para você.
NOTE: Se você vai usar o Docker em uma máquina de produção, então eu recomendo que você não atualize para o CentOS 8/RHEL 8. Continue a usar o CentOS 7/RHEL 7 até que o Docker tenha suporte oficial para o RHEL 8 e CentOS 8.
Instalando as ferramentas necessárias:
Primeiro, atualize o cache do repositório de pacotes CentOS 8 com o seguinte comando:
Agora, instale todas as ferramentas necessárias para instalar o Docker CE com o seguinte comando:
fuse-overlayfs wget
Para confirmar a instalação, prima Y e depois prima <Enter>.
Todas as ferramentas necessárias devem ser instaladas.
Adding Docker CE Official Package Repository:
Docker CE não está disponível no repositório oficial de pacotes do CentOS 8. Mas você pode adicionar o repositório oficial de pacotes do Docker CE no CentOS 8 e instalar o Docker a partir dele.
Para adicionar o repositório oficial de pacotes do Docker CE, execute o seguinte comando:
docker-ce.repo
Agora, atualize o cache do repositório de pacotes CentOS 8 com o seguinte comando:
Installing Containerd.io:
A principal incompatibilidade do Docker CE no RHEL 8 e CentOS 8 é a embalagem containerd.io. O Docker CE depende desse pacote, mas o RHEL 8 e o CentOS 8 marcaram oficialmente esses pacotes. Portanto, você não pode instalar a versão do pacote containerd.io que o Docker precisa para funcionar no RHEL 8 e no CentOS 8 usando diretamente os gerenciadores de pacotes DNF ou YUM.
Felizmente, podemos baixar manualmente a última versão do containerd.io.io pacote e instalá-lo no CentOS 8.
Primeiro, navegue para o diretório /tmp como segue:
A última versão do pacote containerd.io é 1.2.6-3.3 no momento desta escrita. Você pode verificar por uma versão posterior quando estiver lendo este artigo em https://download.docker.com/linux/centos/7/x86_64/stable/Packages/
Agora, baixe a última versão do containerd.pacote io do repositório oficial de pacotes CentOS 7 do Docker CE com o seguinte comando:
containerd.io-1.2.6-3.3.el7.x86_64.rpm
>A última versão do containerd.O pacote io deve ser baixado.
O arquivo containerd.io RPM deve estar no diretório /tmp como você pode ver na captura de tela abaixo.
Agora, instale o arquivo de pacote containerd.io-1.2.6-3.3.el7.x86_64.rpm usando o gerenciador de pacotes DNF como segue:
Para confirmar a instalação, pressione Y e depois pressione <Enter>.
A última versão do containerd.io deve ser instalada.
Agora, você está pronto para instalar o Docker CE na sua máquina CentOS 8.
Instalando o Docker CE:
Para instalar o Docker CE no CentOS 8 a partir do repositório oficial de pacotes do Docker CE, execute o seguinte comando:
Para confirmar a instalação, pressione Y e depois pressione <Enter>.
O gestor de pacotes DNF deve começar a descarregar todos os pacotes RPM necessários do repositório de pacotes Docker CE. Pode demorar algum tempo para completar.
Neste ponto, o Docker CE deve ser instalado.
Agora, verifique o estado do serviço docker com o seguinte comando:
O serviço docker pode estar inativo (não rodando) e desativado (não iniciará automaticamente no boot) como no meu caso.
Para iniciar o serviço docker, execute o seguinte comando:
> Também, para iniciar automaticamente o serviço docker no boot do sistema, adicione o serviço docker à inicialização do sistema CentOS 8 como a seguir:
>Agora, verifique novamente o estado do serviço docker.
O serviço docker deve estar ativo (rodando) e habilitado (iniciará automaticamente no boot do sistema).
Você não vai querer rodar comandos Docker com o sudo ou como usuário root. Para executar os comandos Docker como seu usuário de login, você deve adicionar seu usuário de login ao grupo docker.
Para adicionar seu usuário de login ao grupo docker, execute o seguinte comando:
Agora, reinicie sua máquina CentOS 8 com o seguinte comando:
>
Agarre as botas da sua máquina CentOS 8, pode verificar se o Docker está a funcionar com o seguinte comando:
Como pode ver, estou a executar o Docker CE 19.03.5. Docker Engine cliente e servidor também está funcionando.
Agora, vamos tentar rodar o container Docker hello-world.
Como pode ver, o Docker puxou o contentor hello-world da internet e correu-o com sucesso.
Então, é assim que se instala o Docker CE no CentOS 8. Obrigado por ler este artigo.