Table of Contents
Instalação do Docker no Oracle Linux 9
Criando uma Partição para os Containers
No Oracle Linux, é possível criar uma partição dedicada para armazenar os containers do Docker. Os seguintes comandos ajudam a configurar um volume lógico usando o LVM:
- Crie o volume físico:
sudo pvcreate /dev/vdb
- Verifique o volume físico criado:
sudo pvdisplay /dev/vdb sudo pvs /dev/vdb
- Crie o grupo de volumes (VG):
sudo vgcreate VGdocker /dev/vdb sudo vgdisplay VGdocker sudo vgs VGdocker
- Crie o volume lógico (LV):
sudo lvcreate -l 100%FREE -n LVdocker VGdocker sudo lvdisplay /dev/VGdocker/LVdocker sudo lvs /dev/VGdocker/LVdocker
- Formate o volume lógico com o sistema de arquivos XFS:
sudo mkfs.xfs /dev/mapper/VGdocker-LVdocker
- Monte o volume na pasta de containers do Docker:
sudo mkdir /var/lib/docker UUID=$(sudo blkid -o export /dev/mapper/VGdocker-LVdocker | grep UUID) sudo cp -p /etc/fstab{,.dist} echo "${UUID} /var/lib/docker xfs defaults 1 2" | sudo tee -a /etc/fstab sudo mount /var/lib/docker
- Verifique se o volume foi montado corretamente:
df -hT | grep docker
Atualizando os Pacotes do Sistema
Antes de instalar o Docker, é importante garantir que todos os pacotes do sistema estejam atualizados:
sudo dnf update -y
Adicionando o Repositório do Docker
Como o Docker não está nos repositórios padrão do Oracle Linux, você precisará adicionar o repositório oficial do Docker.
- Instale o pacote `dnf-plugins-core` para gerenciar repositórios extras:
sudo dnf install dnf-utils -y
- Adicione o repositório Docker oficial:
sudo dnf config-manager --add-repo https://download.docker.com/linux/rhel/docker-ce.repo
Instalando o Docker
Agora você pode instalar o Docker CE (Community Edition) e seus componentes principais:
sudo dnf install docker-ce docker-ce-cli containerd.io docker-compose-plugin -y
Iniciando e Habilitando o Serviço Docker
Após a instalação, inicie o serviço Docker e configure-o para iniciar automaticamente durante o boot:
sudo systemctl start docker sudo systemctl enable docker
Adicionando o Usuário ao Grupo Docker
Para evitar a necessidade de usar sudo sempre que executar o Docker, adicione seu usuário ao grupo docker:
sudo usermod -aG docker $USER
Você precisará sair e entrar novamente na sessão para aplicar as alterações. Se preferir, use o comando abaixo para aplicar a mudança imediatamente:
newgrp docker
Nota de Segurança: Adicionar usuários ao grupo `docker` pode representar um risco de segurança, já que esse grupo concede permissões equivalentes ao usuário `root`. Para ambientes de produção, considere o uso de políticas de segurança adicionais.
Verificando a Instalação do Docker
Agora que o Docker foi instalado, verifique se ele está funcionando corretamente:
- Verifique a versão do Docker:
docker --version
- Execute o contêiner de teste:
O contêiner hello-world serve como um teste simples para verificar se o Docker foi instalado corretamente:
docker run hello-world
- Verifique o status do serviço Docker (opcional):
sudo systemctl status docker
Alterando a Rede Padrão do Docker e Habilitando o IPv6
Se você deseja alterar a configuração de rede padrão do Docker e habilitar o suporte a IPv6, siga os passos abaixo:
- Modifique o arquivo `daemon.json`:
Crie ou edite o arquivo `/etc/docker/daemon.json` com o seguinte conteúdo:
{
"ipv6": true,
"ip6tables": true,
"experimental": true,
"fixed-cidr-v6": "fd00::/64",
"default-address-pools": [
{"base": "192.168.0.0/16", "size": 24},
{"base": "fd00::/56", "size": 64}
]
}
- Reinicie o serviço Docker:
sudo systemctl restart docker
- Verifique a nova configuração de rede:
ip -br a s docker0
- Crie uma rede Docker personalizada com suporte a IPv6:
docker network create --subnet="192.168.1.0/24" --gateway="192.168.1.1" \ --subnet="fd00:0:0:1::/64" --gateway="fd00:0:0:1::1" --ipv6 zbx-network
Conclusão
Este tutorial guia você pela instalação do Docker no Oracle Linux 9, incluindo a configuração de partições, adição de repositórios, instalação do Docker, e alteração das configurações de rede com suporte a IPv6. Agora você está pronto para utilizar o Docker em seu sistema.
