Docker Compose na VPS: como subir WordPress com MariaDB em minutos

Tempo de leitura: 3 minutos

Montar WordPress na mão significa instalar servidor web, PHP e banco, e depois ainda manter tudo atualizado. Com Docker Compose WordPress e banco ficam descritos num único arquivo, e você sobe o ambiente inteiro com um comando.

Ambientes assim rodam melhor numa VPS com SSD NVMe, onde o banco responde rápido. Se você ainda não tem onde rodar isso, a Cloud VPS Brasil já entrega o servidor pronto.

O que é o Docker Compose

O Compose lê um arquivo docker-compose.yml e cria os containers, as redes e os volumes que você descreveu. Em vez de lembrar cinco comandos longos, você roda docker compose up -d e pronto. Ele já vem junto com as versões atuais do Docker.

Estrutura de pastas

Crie uma pasta para o projeto, assim tudo fica organizado:

mkdir -p ~/meusite && cd ~/meusite

O arquivo docker-compose.yml

Crie o arquivo docker-compose.yml com este conteúdo (troque as senhas):

services:
  db:
    image: mariadb:11
    restart: unless-stopped
    environment:
      MARIADB_DATABASE: wordpress
      MARIADB_USER: wpuser
      MARIADB_PASSWORD: troque_esta_senha
      MARIADB_ROOT_PASSWORD: troque_a_senha_root
    volumes:
      - db_data:/var/lib/mysql

  wordpress:
    image: wordpress:latest
    restart: unless-stopped
    depends_on:
      - db
    ports:
      - "127.0.0.1:8080:80"
    environment:
      WORDPRESS_DB_HOST: db
      WORDPRESS_DB_USER: wpuser
      WORDPRESS_DB_PASSWORD: troque_esta_senha
      WORDPRESS_DB_NAME: wordpress
    volumes:
      - wp_data:/var/www/html

volumes:
  db_data:
  wp_data:

Dois detalhes importantes. Os volumes guardam o banco e os arquivos do site fora do container, então atualizar a imagem não apaga nada. E a porta fica presa em 127.0.0.1:8080, para o site ser publicado por um proxy reverso com HTTPS e não direto.

Como subir e conferir

docker compose up -d
docker compose ps

Se o status dos dois serviços aparecer como running, está no ar. Para acompanhar o que acontece:

docker compose logs -f wordpress

Como publicar com domínio e HTTPS

Aponte o domínio para o IP da VPS e use o Nginx como proxy reverso para http://127.0.0.1:8080. O passo a passo está em Nginx como proxy reverso na VPS, e o certificado grátis vem com o Let’s Encrypt e o Certbot.

Comandos do dia a dia

  • docker compose stop: para tudo sem apagar.
  • docker compose down: remove os containers, mas mantém os volumes.
  • docker compose pull && docker compose up -d: atualiza as imagens.
  • docker compose exec db mariadb-dump -u root -p wordpress > backup.sql: faz backup do banco.

Erros comuns

  1. Erro de conexão com o banco logo no começo: o MariaDB leva alguns segundos para iniciar na primeira vez. Espere e recarregue.
  2. Senha do banco diferente nos dois serviços: confira se MARIADB_PASSWORD e WORDPRESS_DB_PASSWORD são iguais.
  3. Mudou a senha depois de criar o volume: o MariaDB só aplica as variáveis na primeira criação. Para recomeçar do zero, docker compose down -v (isso apaga os dados).

Um servidor pronto para os seus containers

O Compose resolve a montagem, e o desempenho final depende do servidor. Na Cloud VPS Brasil você conta com Intel Xeon Gold, SSD NVMe, baixa latência, tráfego ilimitado, preço fixo em reais e suporte humano via WhatsApp e ticket. Fale com a equipe pelo WhatsApp e escolha o plano ideal para o seu projeto.