DEV Community

Cover image for Configurando um Ambiente de Desenvolvimento WordPress com DDEV (Docker) — rápido, padronizado e sem dor de cabeça
Willian Rodrigues
Willian Rodrigues

Posted on

Configurando um Ambiente de Desenvolvimento WordPress com DDEV (Docker) — rápido, padronizado e sem dor de cabeça

O DDEV é uma ferramenta que facilita muito a criação de ambientes locais para aplicações web — e isso inclui WordPress. A proposta é simples: você sobe um WordPress local com Docker em poucos comandos, com um setup replicável pro time inteiro (sem aquela de que “na minha máquina funciona”).

Neste guia, vou mostrar como instalar e configurar um ambiente WordPress com DDEV, e também como resolver um problema clássico que pode aparecer na primeira vez: erro 403 Forbidden no Nginx.


Por que usar DDEV para WordPress?

Se você trabalha com WordPress profissionalmente (agência, freelas, produto, etc.), DDEV é o tipo de coisa que vira padrão porque:

  • padroniza o ambiente entre devs (menos variação, menos bug “fantasma”)
  • acelera onboarding do time
  • evita XAMPP e setups manuais cheios de gambiarra
  • melhora a produtividade com rotinas automáticas (hooks, pull de banco, etc.)

Requisitos para rodar WordPress com DDEV

Antes de começar, você precisa ter:

Depois disso, bora pro setup.


Criando o projeto WordPress com DDEV

Crie uma pasta pro projeto e :

mkdir wp-test-site
cd wp-test-site
Enter fullscreen mode Exit fullscreen mode

Configure o DDEV:

ddev config
Enter fullscreen mode Exit fullscreen mode

Aqui você escolhe:

  • nome do projeto
  • tipo do projeto: selecione WordPress

Agora inicie o ambiente:

ddev start
Enter fullscreen mode Exit fullscreen mode

O terminal vai mostrar os endereços do seu site local, algo como:

Acesse no navegador e finalize a instalação do WordPress.

Simples assim. Ou deveria ser.


Eu travei feio nisso na primeira vez. Mas o motivo é bem direto: não existiam arquivos do core do WordPress na raiz do projeto.

Ou seja: DDEV subiu o servidor, mas o WordPress (wp-admin, wp-load.php, etc.) não estava lá.

Solução “raiz”: baixar o WordPress na raiz do projeto no link https://wordpress.org/latest.tar.gz

Você pode baixar e colocar os arquivos manualmente, mas isso é chato e nada escalável — principalmente pra um time.

Ou rodar o comando no SSH:

ddev ssh
Enter fullscreen mode Exit fullscreen mode
wp core install --url=YOUR_DOMAIN --title=YOUR_BLOG_TITLE --admin_user=YOUR_USER --admin_password=YOUR_PASSWORD --admin_email=YOUR_EMAIL
Enter fullscreen mode Exit fullscreen mode

Então a ideia é automatizar.


Automação: baixar o WordPress automaticamente ao rodar ddev start

Edite o arquivo: ./.ddev/config.yaml (ou config.yml, dependendo do seu projeto)

E adicione este hook:

hooks:
  post-start:
    - exec: "curl -O https://wordpress.org/latest.tar.gz"
    - exec: "tar -xzf latest.tar.gz --strip-components=1"
    - exec: "rm latest.tar.gz"
Enter fullscreen mode Exit fullscreen mode

O que isso faz?

  • post-start: executa depois do DDEV iniciar
  • baixa o WordPress
  • extrai na pasta atual
  • remove o arquivo baixado (limpeza)

Resultado:

  • Primeira vez: baixa e extrai
  • Próximas vezes: ignora e segue a vida

Iniciando o projeto (do jeito certo)

Rode sempre a partir da raiz do projeto (onde está o .ddev): ddev start

Na primeira execução pode demorar um pouco (download do core). Depois, fica ligeiro.

E dá pra ir além:

  • configurar scripts para puxar banco/arquivos de um staging
  • variáveis de ambiente pra configurações por projeto
  • scripts de provisionamento (plugins, tema, seeds, etc.)

Mas isso já é papo pra outro post.

Conclusão

Se você desenvolve WordPress e ainda perde tempo configurando ambiente, DDEV é um upgrade obrigatório. Você sobe o projeto em minutos, padroniza pro time e ainda automatiza coisas chatas como baixar o core do WordPress.

Começa com o básico e depois turbina.

Happy coding. 🚀

Referências:

Top comments (0)