Crie um ambiente local usando WordPress VIP e Docker

Recentemente tive experiências ruins na hora de configurar ambientes locais de WordPress VIP usando Chassis. Percebendo o tempo que vinha gastando eu decidi utilizar uma ferramenta com a qual tenho mais familiaridade: Docker.

A troca valeu a pena! Estou rodando diversos ambientes – a maioria multisite – e minha máquina vem aguentando bem, sem travar e com o banco de dados rodando com velocidade. 😎

Antes de iniciar o passo-a-passo devo dizer que existe uma documentação oficial sobre o assunto. Mas eu gostaria de esmiuçar mais o assunto e trazê-lo para o português.

Requerimentos ⚠

  1. npm
  2. nvm
  3. Docker Desktop

Passo a passo 👣

  1. Primeiramente, ajuste a versão do Node para 14 ou superior: nvm use 14
  2. Instale o VIP: npm install -g @automattic/vip
  3. Certifique-se que o Docker está aberto e rodando.
  4. Crie um novo ambiente de desenvolvimento: vip dev-env create --slug=site-exemploNão se preocupe com pastas e repositórios nesse momento.
  5. Configure o novo ambiente (dev-env) seguindo os passos:
    ✔ WordPress site title · Site Exemplo
    ✔ Multisite (y/N) · true
    ✔ PHP version to use · 8.0
    ✔ WordPress – Which version would you like · 6.1
    ✔ How would you like to source vip-go-mu-plugins · image
    ✔ How would you like to source application code · local
    ✔ What is a path to your local application code · ./site-exemplo

    ➡️ Nesse último passo eu apontei o ambiente para uma pasta clonada de um repositório chamado site-exemplo. Caso escolha seu próprio repositório certifique-se que esta contém as pastas: plugins, themes, private, images, client-mu-plugins, vip-config. Mas você pode escolher utilizar uma cópia do repositório VIP, escolha a opção local.
    ✔ Enable Elasticsearch (needed by Enterprise Search)? (y/N) · true
    ✔ Enable phpMyAdmin (y/N) · false
    ✔ Enable XDebug (y/N) · true
    ✔ Enable MailHog (y/N) · false
  6. Agora o VIP lhe dará as urls e informação sobre o ambiente criado:
    SLUG site-exemplo
    LOCATION /Users/.local/share/vip/dev-environment/site-exemplo
    SERVICES devtools, nginx, php, database, memcached, wordpress, vip-mu-plugins
    NGINX URLS http://site-exemplo.vipdev.lndo.site/
    STATUS DOWN
    DEFAULT USERNAME vipgo
    DEFAULT PASSWORD password
  7. Pronto! Ambiente criado!
  8. Inicie o novo ambiente: vip dev-env start --slug=site-exemplo – Isso pode demorar um pouco na primeira vez.
  9. Se algo der errado rode o comando:
    vip dev-env start --slug=site-exemplo --debug @automattic/vip:bin:dev-environment
  10. Agora você pode acessar a URL:  http://site-exemplo.vipdev.lndo.site/wp-admin/
  11. Se você tem alguma cópia de algum banco de dados é hora de importá-lo e rodar o comando search-replace, deixe o arquivo sql na raiz:
    vip dev-env import sql database.sql --slug=site-exemplo --search-replace="url-antiga-aqui,site-exemplo.vipdev.lndo.site"
  12. Limpe o cache: vip dev-env exec --slug example-site -- wp cache flush
  13. Crei um novo usuário e senha, se desejar: vip dev-env exec –slug=site-exemplo — wp user create USERNAME-AQUI EMAIL-DO-USUÁRIO —user_pass=password –role=administrator
  14. Se desejar, adicione o novo usuário como super admin: vip dev-env exec --slug=site-exemplo -- wp super-admin add USERNAME-AQUI

É isso! Agora é sua vez de tentar! Em caso de dúvidas é só deixar nos comentários.

3 comentários em “Crie um ambiente local usando WordPress VIP e Docker”

Deixe uma resposta