Poupe 15% em todos os serviços de alojamento

Teste as suas habilidades e obtenha Desconto em qualquer plano

Utilizar o código: Skills Começar a trabalhar
Secções
Administração Linux

Como Instalar Docker no CentOS: Guia Completo Passo a Passo

Docker mudou fundamentalmente a forma como os desenvolvedores constroem, enviam e executam aplicações. Ao empacotar software em contentores leves e portáteis, Docker elimina o clássico problema “funciona na minha máquina” e simplifica dramaticamente tanto os fluxos de trabalho de desenvolvimento como as implementações em produção. Se está a executar CentOS e quer aproveitar o poder da containerização, este guia abrangente orienta-o em cada passo — desde uma atualização do sistema limpa até à configuração avançada.

Quer esteja a implementar uma única aplicação web ou a orquestrar ambientes complexos com múltiplos contentores, instalar Docker corretamente no CentOS é o primeiro passo crítico.

Pré-requisitos

Antes de começar, certifique-se de que tem:

  • Um servidor CentOS 7 ou CentOS 8 (físico ou virtual)
  • Uma conta de utilizador com privilégios sudo
  • Uma ligação à Internet estável
  • Familiaridade básica com a linha de comandos Linux

> Dica Pro: Para a melhor experiência com Docker, considere executá-lo num plano de Alojamento VPS. Um servidor privado virtual oferece-lhe acesso total root, recursos dedicados e a flexibilidade de executar contentores sem as restrições de ambientes partilhados.

Passo 1: Atualizar o Sistema

Antes de instalar qualquer novo software, sempre atualize seus pacotes existentes para garantir compatibilidade e segurança. Execute o seguinte comando:

sudo yum update -y

Este comando atualiza todos os pacotes instalados para suas versões mais recentes. Pode levar alguns minutos dependendo de quantas atualizações estão pendentes. Um sistema totalmente atualizado reduz o risco de conflitos de dependência durante a instalação do Docker.

Passo 2: Instalar Dependências Necessárias

Docker depende de vários pacotes de nível do sistema para funcionar corretamente. Instale-os com um único comando:

sudo yum install -y yum-utils device-mapper-persistent-data lvm2

Aqui está o que cada pacote faz:

PacoteFinalidade
yum-utilsFornece o utilitário yum-config-manager para gerenciar repositórios
device-mapper-persistent-dataNecessário para o driver de armazenamento device mapper do Docker
lvm2Suporte do Logical Volume Manager para o backend de armazenamento do Docker

Essas dependências garantem que o Docker possa gerenciar o armazenamento de contêineres de forma eficiente e confiável no seu sistema CentOS.

Passo 3: Adicionar o Repositório Oficial do Docker

Os repositórios de pacotes padrão do CentOS não incluem os pacotes Docker mais recentes. Você precisa adicionar o repositório oficial do Docker para obter a versão mais atual e estável:

sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

Este comando adiciona o repositório CentOS oficial do Docker à lista de repositórios do seu sistema. Usar a fonte oficial garante que você receba pacotes Docker genuínos e atualizados diretamente da Docker Inc., em vez de versões potencialmente desatualizadas de espelhos de terceiros.

Você pode verificar se o repositório foi adicionado com sucesso listando seus repositórios configurados:

sudo yum repolist

Passo 4: Instalar Docker Engine

Com o repositório em vigor, instalar Docker é direto:

sudo yum install -y docker-ce docker-ce-cli containerd.io

> Nota: É recomendado instalar também docker-ce-cli (a interface de linha de comando do Docker) e containerd.io (o runtime do contentor) juntamente com o motor principal para uma configuração completa e pronta para produção.

Isto instala a Docker Community Edition (CE) — a versão gratuita e de código aberto do Docker que é perfeitamente adequada para cargas de trabalho de desenvolvimento e produção.

Passo 5: Iniciar e Ativar o Serviço Docker

Instalar Docker não o inicia automaticamente. Você precisa iniciar o daemon Docker e configurá-lo para ser lançado automaticamente na inicialização do sistema:

sudo systemctl start docker
sudo systemctl enable docker
    systemctl start docker — Inicia o serviço Docker imediatamente
    systemctl enable docker — Configura Docker para iniciar automaticamente sempre que o servidor reiniciar
    
    Verificar o Status do Serviço
    Confirme que Docker está funcionando corretamente:
    sudo systemctl status docker
    Você deve ver uma saída indicando que o serviço está active (running). Se o status mostrar algum erro, revise os logs do sistema com journalctl -u docker para detalhes de resolução de problemas.
    Passo 6: Verificar a Instalação do Docker
    Execute o teste integrado do Docker para confirmar que tudo está funcionando conforme esperado:
    sudo docker run hello-world
    Este comando faz o seguinte:
    
    Contacta o registo Docker Hub
    Descarrega a imagem de teste leve hello-world
  • Cria um novo contentor a partir dessa imagem
  • Executa o contentor, que imprime uma mensagem de confirmação
  • Se a sua instalação for bem-sucedida, verá um resultado que começa com:

    Hello from Docker!
    This message shows that your installation appears to be working correctly.

    Parabéns — Docker está agora totalmente instalado e operacional no seu servidor CentOS.

    Passo 7: Configurar Docker para Utilizadores Não-Root (Opcional mas Recomendado)

    Por padrão, os comandos Docker requerem sudo (privilégios de root). Para segurança e conveniência em ambientes de desenvolvimento, pode permitir que utilizadores não-root específicos executem comandos Docker adicionando-os ao grupo docker.

    Criar o Grupo Docker

    Na maioria dos casos, este grupo é criado automaticamente durante a instalação. Se não, crie-o manualmente:

    sudo groupadd docker

    Adicionar o Seu Utilizador ao Grupo Docker

    Substitua your_username pelo nome de utilizador Linux real:

    sudo usermod -aG docker your_username

    Aplicar as Alterações

    Termine a sessão e inicie sessão novamente para atualizar a sua associação ao grupo. Em alternativa, ative a alteração na sessão atual:

    newgrp docker

    Testar Sem Sudo

    docker run hello-world

    Se isto for executado sem sudo e sem um erro de permissão, a configuração está a funcionar corretamente.

    > Aviso de Segurança: O grupo docker concede privilégios equivalentes ao utilizador root. Adicione apenas utilizadores de confiança a este grupo em ambientes de produção.

    Passo 8: Referência de Comandos Docker Essenciais

    Assim que Docker estiver em execução, aqui estão os comandos mais importantes que você usará diariamente:

    Gerenciamento de Contêineres

    # List all running containers
    docker ps
    
    # List all containers (including stopped ones)
    docker ps -a
    
    # Start a stopped container
    docker start container_id
    
    # Stop a running container
    docker stop container_id
    
    # Remove a container
    docker rm container_id
    
    # Remove all stopped containers at once
    docker container prune

    Gerenciamento de Imagens

    # List all locally stored images
    docker images
    
    # Pull an image from Docker Hub
    docker pull image_name
    
    # Pull a specific version/tag
    docker pull image_name:tag
    
    # Remove a local image
    docker rmi image_name
    
    # Remove all unused images
    docker image prune -a

    Executando Contêineres

    # Run a container interactively
    docker run -it image_name /bin/bash
    
    # Run a container in detached (background) mode
    docker run -d image_name
    
    # Run a container with port mapping
    docker run -d -p 8080:80 image_name
    
    # Run a container with a custom name
    docker run -d --name my_container image_name

    Visualizando Logs e Estatísticas

    # View container logs
    docker logs container_id
    
    # Follow live log output
    docker logs -f container_id
    
    # View real-time resource usage
    docker stats

    Passo 9: Confirmar que o Docker Inicia no Boot

    O Docker já deve estar configurado para iniciar no boot após executar systemctl enable docker. Para verificar novamente ou reativar esse comportamento:

    sudo systemctl enable docker

    Para desativar a inicialização automática (por exemplo, em uma máquina de desenvolvimento onde você nem sempre precisa que o Docker esteja em execução):

    sudo systemctl disable docker

    Passo 10: Configuração Avançada (Opcional)

    Instalar Docker Compose

    Docker Compose é uma ferramenta essencial para definir e gerenciar aplicações multi-contentor usando um simples ficheiro de configuração YAML. Instale a versão estável mais recente:

    sudo curl -L "https://github.com/docker/compose/releases/download/v2.24.0/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
    sudo chmod +x /usr/local/bin/docker-compose

    Verifique a instalação:

    docker-compose --version

    Com Docker Compose, pode definir pilhas de aplicações inteiras — servidores web, bases de dados, caches — num único ficheiro docker-compose.yml e iniciá-las todas com um comando: docker-compose up -d.

    Configurar o Docker Daemon

    Pode personalizar o comportamento do Docker editando (ou criando) o ficheiro de configuração do daemon:

    sudo nano /etc/docker/daemon.json

    Um exemplo de configuração comum:

    {
      "log-driver": "json-file",
      "log-opts": {
        "max-size": "10m",
        "max-file": "3"
      },
      "storage-driver": "overlay2",
      "default-address-pools": [
        {"base": "172.17.0.0/16", "size": 24}
      ]
    }

    Após editar a configuração do daemon, reinicie o Docker para aplicar as alterações:

    sudo systemctl restart docker

    As definições comuns do daemon que pode configurar incluem:

    • Controlador de registo e rotação — Evite que os registos do contentor consumam todo o espaço em disco
    • Controlador de armazenamentooverlay2 é o controlador recomendado para CentOS
    • Definições de DNS — Defina servidores DNS personalizados para contentores
    • Espelhos de registo — Acelere as transferências de imagens com espelhos locais

    Configurar Regras de Firewall (CentOS 7)

    Se está a executar firewalld, pode precisar de permitir o tráfego de rede do Docker:

    sudo firewall-cmd --zone=public --add-masquerade --permanent
    sudo firewall-cmd --reload

    Escolher o Ambiente de Hosting Correto para Docker

    Executar Docker em produção requer um ambiente de servidor confiável e de alto desempenho. Aqui estão as melhores opções dependendo do seu caso de uso:

    • VPS Hosting — Ideal para a maioria das implementações Docker. Acesso root completo, recursos escaláveis e preços económicos tornam VPS a escolha preferida para aplicações containerizadas.
    • Servidores Dedicados — Melhor para ambientes de produção com alto tráfego ou quando você precisa de máximo desempenho de CPU, RAM e armazenamento para executar dezenas de containers simultaneamente.
    • GPU Hosting — Perfeito para cargas de trabalho AI/ML executadas dentro de containers Docker que requerem aceleração GPU para treinamento ou inferência de modelos.
    • VPS com cPanel — Se você precisa de Docker juntamente com um painel de controlo amigável para gerenciar websites e email, esta combinação oferece o melhor dos dois mundos.

    Resolução de Problemas Comuns do Docker no CentOS

    Docker Daemon Falha ao Iniciar

    Verifique os logs do sistema para detalhes de erro:

    journalctl -u docker --no-pager | tail -50

    Erros de Permissão Negada

    Se você vir Got permission denied while trying to connect to the Docker daemon socket, certifique-se de que seu usuário está no grupo docker e que você fez logout e login novamente.

    Não é Possível Extrair Imagens

    Verifique se seu servidor tem acesso à internet de saída e se o DNS está resolvendo corretamente:

    curl -I https://registry-1.docker.io

    Problemas de Rede do Container

    Reinicie o Docker para reinicializar as pontes de rede:

    sudo systemctl restart docker

    Conclusão

    Instalou com sucesso o Docker no CentOS e tem uma base sólida para trabalhar com containers. Aqui está um resumo rápido do que foi abordado:

    1. ✅ Atualizou o sistema e instalou dependências
    2. ✅ Adicionou o repositório oficial do Docker
    3. ✅ Instalou o Docker CE e verificou a instalação
    4. ✅ Configurou o Docker para iniciar no boot
    5. ✅ Configurou acesso de utilizador não-root
    6. ✅ Aprendeu comandos essenciais do Docker
    7. ✅ Instalou Docker Compose para gestão multi-container
    8. ✅ Explorou opções de configuração do daemon

    Docker no CentOS abre um mundo de possibilidades — desde executar ambientes de desenvolvimento isolados até implementar arquiteturas de microsserviços escaláveis em produção. As competências de containerização que desenvolve aqui servirão como base para tópicos mais avançados como orquestração Kubernetes, pipelines CI/CD e desenvolvimento de aplicações cloud-native.

    Para a melhor experiência com Docker, certifique-se de que o seu ambiente de servidor está à altura da tarefa. Explore os planos de Alojamento VPS da AlexHost para uma base poderosa, fiável e acessível para todas as suas cargas de trabalho containerizadas.