Desenvolvimento WordPress · 11 min read · Dec 07, 2025
Configurar um Ambiente de Desenvolvimento Local WordPress com Vagrant

Se você desenvolve com WordPress, é preferível configurar um ambiente local onde você tenha instalado um servidor, uma ferramenta de banco de dados e alguns sites WordPress junto com outras ferramentas que você precisa. Isso é aceitável se você trabalha em apenas alguns projetos. Mas quando eles se multiplicam, problemas ocorrem. E também as dores de cabeça de manter múltiplos ambientes, porque o cliente tem uma configuração diferente da sua.
Para contornar esse problema, podemos usar o que chamamos de Vagrant. O Vagrant é uma ferramenta para trabalhar com ambientes virtuais. Ele fornece uma maneira fácil de configurar um ambiente de desenvolvimento local com alguns comandos, e você pode replicar uma configuração completa quantas vezes quiser, com facilidade e sem a complicação de instalar tudo manualmente. Para executar o Vagrant, você precisa definir um conjunto de regras. O Vagrant configura sua máquina virtual com base nessas regras. O Vagrant precisa de dois arquivos para isso: Vagrantfile, que informa ao Vagrant que tipo de hardware a máquina virtual precisa, e um arquivo de implantação, que diz ao Vagrant o que fazer na máquina virtual.
Como o Vagrant trabalha com ambientes virtuais, você precisa de um software de máquina virtual para executar o Vagrant. Para nossos propósitos, usaremos o Virtualbox de Código Aberto.
Instalando o VirtualBox
Acesse a página de download do Virtualbox e baixe um arquivo binário correspondente ao seu sistema operacional hospedeiro. (O sistema operacional hospedeiro é o sistema operacional de onde você estará executando seu ambiente de desenvolvimento.) Instale o Virtualbox.
Instalando o Vagrant
Baixe o binário correspondente ao seu sistema operacional na página de download do Vagrant e instale-o.
Para testar se foi instalado com sucesso, digite o seguinte comando na linha de comando do seu sistema operacional.
$ vagrant -vInstalando o Plugin Vagrant Hosts Updater
O plugin vagrant-hostupdater modificará o arquivo hosts do seu sistema operacional para que os domínios configurados pelo Vagrant funcionem. Para instalá-lo, execute o seguinte comando
$ vagrant plugin install vagrant-hostsupdaterReinicie seu sistema operacional após instalar o Vagrant/Virtualbox para que não haja problemas de rede.
Instalando o Git
Linux
Também precisaremos do controle de versão do Git para este tutorial. Se você não o tiver instalado, instale-o usando o seguinte comando se você tiver uma distribuição Debian/Ubuntu
$ sudo apt install gitou se você tiver Fedora
$ sudo dnf install gitou se você tiver CentOS/RHEL
$ sudo yum install gitVerifique a versão do Git instalada via o seguinte comando
$ git --versionVocê verá algo como
$ git version 2.20.1Você precisa configurar o Git através dos seguintes comandos.
$ git config --global user.name "Seu Nome"
$ git config --global user.email "[email protected]"Windows
Para instalar o Git no Windows, acesse a página de Download do Git e instale o binário.
Mac OS
Se você tiver o homebrew instalado, pode instalar o Git através do seguinte comando.
$ brew install gitou você pode baixar um pacote binário da página de Download do Git e instalá-lo.
Instalar Varying Vagrant Vagrants
Em vez de criar uma configuração do Vagrant do zero, usaremos o Varying Vagrants Vagrant (VVV) - uma configuração Vagrant de código aberto destinada especificamente à criação de Ambientes de Desenvolvimento WordPress. Um VVV padrão configura sua máquina virtual com base no Ubuntu 18.04 junto com servidor Nginx, banco de dados MariaDB, PHP, WP-CLI, Node.js, MailHog, Composer, memcached, phpMyAdmin, git e várias outras ferramentas. O VVV lhe dará várias instalações do WordPress por padrão, uma delas sendo a versão mais recente para ajudá-lo a experimentar.
O primeiro passo é clonar o repositório Git do VVV para um diretório local em seu sistema.
$ git clone -b master git://github.com/Varying-Vagrant-Vagrants/VVV.git ~/vvvAqui estamos clonando o branch master do repositório no sistema. Se você quiser atualizações mais rápidas, pode usar o branch develop.
Iniciando o VVV
Mude para o diretório onde você clonou o VVV.
$ cd vvvInicie o ambiente Vagrant que instalará a máquina virtual e configurará tudo.
$ vagrant upEsse processo pode levar um tempo, então seja paciente. Você pode ser solicitado a fornecer sua senha de root durante o processo, que é necessária para configurar o arquivo hosts do seu sistema.
Nota para Usuários do Windows 8/10
Se você estiver no Windows, pode receber o seguinte erro
==> default: Booting VM...
Houve um erro ao executar `VBoxManage`, um CLI usado pelo Vagrant
para controlar o VirtualBox. O comando e o stderr estão mostrados abaixo.
Comando: ["startvm", "1fe83aa1-2f23-4ddd-ad77-b7e7e00aabe6", "--type", "headless"]
Stderr: VBoxManage.exe: erro: Falha ao abrir/criar a rede interna 'HostInterfaceNetworking-VirtualBox Host-Only
Ethernet Adapter #3' (VERR_INTNET_FLT_IF_NOT_FOUND).
VBoxManage.exe: erro: Falha ao anexar o LUN de rede (VERR_INTNET_FLT_IF_NOT_FOUND)
VBoxManage.exe: erro: Detalhes: código E_FAIL (0x80004005), componente ConsoleWrap, interface IConsoleNote o Adaptador referido aqui:
VirtualBox Host-Only Ethernet Adapter #3Abra o Painel de Controle >> Centro de Rede e Compartilhamento. Agora clique em Alterar Configurações do Adaptador. Clique com o botão direito no adaptador cujo Nome ou o Nome do Dispositivo corresponda a VirtualBox Host-Only Ethernet Adapter #3 e clique em Propriedades. Clique no botão Configurar.
Agora clique na aba Driver. Clique em Atualizar Driver. Selecione Procurar meu computador por drivers. Agora escolha Deixe-me escolher a partir de uma lista de drivers disponíveis no meu computador. Selecione a opção que você obtiver e clique em Avançar. Clique em Fechar para finalizar a atualização. Agora volte para seu Terminal/Powershell/Janelinha de Comando e repita o comando vagrant up. Deve funcionar bem desta vez.
Uma vez que isso esteja concluído, você pode visitar seu painel VVV no url http://vvv.test.
O VVV vem com duas instalações padrão do WordPress - http://one.wordpress.test e http://two.wordpress.test Ambas as sites têm os mesmos detalhes de login, admin como nome de usuário e password como senha. As credenciais do banco de dados para ambos os sites são wp como nome de usuário e senha. As credenciais do usuário root do MySQL são root como nome de usuário e senha. E as credenciais do usuário root da VM são root como nome de usuário e vagrant como senha.
Há uma instalação do wordpress developer em http://trunk.wordpress.net, mas não funcionará, pois não foi provisionada. Esta instalação é útil se você é um colaborador do WordPress que trabalha com tickets e patches do Trac. Para habilitá-la, abra vvv-custom.yml e altere o valor de skip_provisioning sob wordpress-trunk para false e então reprovisione a VM usando o comando
$ vagrant reload --provisionHá outra instalação do wordpress sem url rotulada como wordpress-meta-environment. Esta instalação criará um ambiente útil para contribuições à equipe meta do WordPress, por exemplo, WordCamps, .org etc. Para habilitar esta instalação, adicione a seguinte linha sob wordpress-meta-environment no arquivo vvv-custom.yml.
hosts:
- wpmeta.testE então altere o valor de skip_provisioning para false e reprovisione a VM.
$ vagrant reload --provisionAdicionar um Novo Site
Se você quiser adicionar outro site à VM, precisará editar o arquivo vvv-custom.yml que você pode encontrar no diretório vvv. Se não estiver lá, basta copiar vvv-config.yml e criá-lo. Este é um processo único e você não precisará fazê-lo novamente. Sempre faça suas alterações em vvv-custom.yml porque vvv-config.yml é sobrescrito quando você atualiza o VVV.
Adicione o seguinte código na seção de sites ao vvv-custom.yml para adicionar um novo site.
newsite:
repo: https://github.com/Varying-Vagrant-Vagrants/custom-site-template
description: "Uma instalação multisite WordPress em subdiretório"
vm_dir: /srv/www/newsite
local_dir: /home/user/vvv/www/newsite
branch: master
nginx_upstream: php
skip_provisioning: false
hosts:
- newsite.test
custom:
wp_type: subdirectory
Variáveis
repo variable refere-se a um repositório do Github pré-definido que contém informações sobre como configurar um novo site WordPress na VM. Por enquanto, estamos usando um repositório mantido pelo VVV.
description variável é autoexplicativa.
vm_dir é o diretório real dentro da VM onde seu site residirá.
local_dir é o diretório na sua máquina host onde seu site vive.
branch variável diz ao Vagrant para verificar o branch master do repositório no exemplo aqui.
nginx_upstream é usado para definir onde o Nginx passa as solicitações e geralmente é usado para mudar a versão do PHP necessária para sua instalação. php aqui refere-se à versão padrão do PHP que é 7.2. Você pode usar php71 para mudá-la para PHP 7.1 ou php56 para mudá-la para PHP 5.6.
skip_provisioning está definido como false, o que significa que precisamos incluir este site na VM.
hosts variável é usada para definir a url que precisaremos para acessar o site.
custom seção é útil se você precisar de algum controle adicional sobre seu site WordPress. Você pode usar esta seção para configurar uma instalação multisite ou instalar uma versão diferente do WordPress e até mesmo mudar o nome do banco de dados ou do seu site que será usado para sua instalação.
wp_type variável decide se sua instalação será única, multisite com domínios ou multisite com subdiretório. wp_type aceita quatro valores: single, subdomain, subdirectory e none. Com a instalação em subdomínio, você pode definir múltiplos hosts para sua instalação multisite no seguinte formato
hosts:
- multisite.test
- site1.multisite.test
- site2.multisite.test
custom:
wp_type: subdomainVocê pode adicionar mais uma variável sob a seção custom que é wp_version. Você pode defini-la como nightly se quiser instalar a versão Nightly do WordPress. Ela aceita três valores: nightly, latest e um número de versão.
custom:
wp_version: nightly
Há outra variável, db_name que permite que você defina o nome do banco de dados para sua instalação.
custom:
db_name: super_secet_db_name
E por último, site_title variável permite que você defina o Título do seu site WP.
custom:
site_title: Meu Site de Desenvolvimento IncrívelIsso deve cobrir todas as variáveis e opções que você precisaria para adicionar seu próprio site no VVV. Após alterar o arquivo vvv-custom.yml, basta executar o seguinte comando para fazer seu novo site funcionar.
$ vagrant reload --provisionAdicionar um Site Existente
Até agora, aprendemos como adicionar um site totalmente novo ao VVV. Mas e se você já estiver trabalhando em um site e quiser adicioná-lo ao VVV? Vamos ver como podemos fazer isso.
Para adicionar um site existente, o primeiro passo é o mesmo de antes, ou seja, editar o arquivo vvv-custom.yml e adicionar o seguinte código.
howtoforge:
repo: https://github.com/Varying-Vagrant-Vagrants/custom-site-template
description: "Um site WordPress"
vm_dir: /srv/www/newsite
local_dir: /home/user/vvv/www/newsite
hosts:
- howtoforge.localIsso dirá ao VVV para configurar um novo site acessível via http://howtoforge.local Mas é um site totalmente novo. O que precisamos fazer é convertê-lo em nossa instalação existente. Para isso, precisamos copiar os arquivos da nossa instalação WordPress existente para o diretório local, ou seja, /home/user/vvv/www/newsite
$ cp /var/www/howtoforge/ /home/user/vvv/www/newsite/Agora precisamos copiar o banco de dados. Uma maneira simples de fazer isso é exportar seu banco de dados existente como um arquivo .sql, copiar esse arquivo para o diretório do nosso blog e importar o banco de dados novamente acessando via SSH à nossa VM.
Primeiro, faça login no mysql na linha de comando do seu sistema local e use o seguinte comando para exportar o banco de dados.
$ cd /home/user/vvv/www/newsite
$ mysqldump -u username -p database_name > data-dump.sqlAgora podemos reprovisionar a VM novamente.
$ vagrant reload --provisionAcesse sua VM via SSH.
$ vagrant sshAgora importe o banco de dados de volta para sua VM.
$ cd /srv/www/newsite
$ mysql -u root -p newsite < data-dump.sqlO VVV já criou um novo banco de dados durante o provisionamento para nosso blog chamado newsite. A senha para o usuário root é root aqui. O comando acima importará nosso banco de dados existente para o novo.
Isso completa a configuração de um site existente no VVV.
Habilitar SSL
Instalações localhost geralmente não são seguras. E instalar seu próprio certificado no localhost pode ser um processo longo e tedioso, mesmo com o Let’s Encrypt. Mas o VVV torna esse processo bastante fácil e, por padrão, tem SSL habilitado em todas as suas instalações do WordPress. Basta começar a usar https com seus sites. Na primeira vez, seu navegador reclamará sobre um certificado inválido, mas adicione-o como uma exceção e deve estar tudo bem a partir de agora.
Atualizando o WordPress
Você pode atualizar sua instalação do WordPress a partir do seu painel. Além disso, o VVV atualizará seu WordPress sempre que você reprovisionar a VM. Você também pode atualizar o WordPress manualmente baixando-o do WordPress.org e extraindo o arquivo zip. E você também pode usar o WP CLI que vem com o VVV. Para atualizar seu site com o WP CLI, use os seguintes comandos.
$ cd /srv/www/newsite
$ wp core updateAtualizando o VVV
O primeiro passo é parar a máquina Vagrant.
$ vagrant haltAgora, certifique-se de que seu vagrant e Virtualbox estão atualizados. Se não, baixe-os novamente e instale.
Execute o seguinte comando para atualizar sua caixa Vagrant. É opcional, mas é melhor que você siga em frente com isso.
$ vagrant box updateAgora, puxe a versão mais recente do VVV do Github.
$ git pullReprovisione a caixa novamente para completar a atualização.
$ vagrant up --provisionFerramentas Adicionais
O VVV vem com várias utilidades que você pode instalar. Você as encontrará listadas na seção de utilidades no seu arquivo vvv-custom.yml. Por padrão, tls-ca e phpmyadmin estão habilitados. Você pode ainda instalar memcached, opcache, webgrind, mongodb, tideways e versões do php de 5.6 a 7.3 removendo o # na frente deles na seção de utilidades.
Você pode até adicionar seu próprio software que deseja instalar. Você precisaria modificar o arquivo vvv-custom.yml com algo como
utilities:
core:
- tls-ca
- phpmyadmin
java:
- java7
utility-sources:
java:
repo: https://github.com/example/java-utilities.git
branch: masterVocê adicionará uma nova seção, java aqui, por exemplo. O código para a instalação virá de um repositório git. Seu repositório git deve ser estruturado de forma semelhante a
java7/
provision.shO arquivo provision.sh conterá o código necessário para instalar o java na sua VM. O nome da pasta deve corresponder ao nome que você usou acima no arquivo vvv-custom.yml.
Conclusão
Isso conclui nosso tutorial sobre como configurar um ambiente de desenvolvimento local WordPress com Vagrant. Deixe-nos saber se você tiver alguma dúvida.
Receba novas postagens na sua caixa de entrada
Sem spam. Cancele a assinatura a qualquer momento.