Como migrar WordPress para VPS
Migrar WordPress para VPS sem downtime exige uma sequência específica: preparar o novo servidor com o stack Docker, copiar os arquivos e exportar o banco da hospedagem de origem, importar tudo na VPS, testar via arquivo hosts e só então trocar o DNS. Fazer nessa ordem garante que o site novo está 100% funcional antes de qualquer visitante ser redirecionado.
Visão geral do processo
A migração tem cinco etapas que devem ser feitas em ordem. Pular etapas aumenta o risco de downtime:
# 1. Preparar a VPS (Docker + stack WordPress pronto)
# 2. Exportar banco da hospedagem atual
# 3. Copiar arquivos WordPress (wp-content)
# 4. Importar e testar na VPS (via hosts local)
# 5. Trocar DNS e remover hospedagem antigaExportar o banco da hospedagem atual
Exporte o banco MySQL/MariaDB da hospedagem de origem. A maioria dos painéis (cPanel, Plesk) tem o phpMyAdmin disponível:
# Via phpMyAdmin: Banco → Exportar → Quick → SQL → Go
# Via SSH na hospedagem de origem:
mysqldump -u usuario_db -p nome_do_banco > wordpress-backup.sql
# Compactar para download mais rápido
gzip wordpress-backup.sql
# Copiar para a VPS via SCP
scp wordpress-backup.sql.gz root@IP_DA_VPS:/opt/wordpress/Copiar os arquivos wp-content
O wp-content contém temas, plugins e uploads — é o único diretório que você precisa copiar (o core do WordPress é baixado fresh pelo Docker):
# Na hospedagem de origem, compactar wp-content
cd /caminho/para/wordpress
tar czf wp-content.tar.gz wp-content/
# Enviar para a VPS
scp wp-content.tar.gz root@IP_DA_VPS:/opt/wordpress/
# Na VPS, extrair para dentro do volume Docker
# Descobrir o mount path do volume
docker volume inspect wordpress_wp_data
# Extrair direto no volume
docker run --rm \
-v wordpress_wp_data:/dest \
-v /opt/wordpress:/src \
alpine sh -c "cd /dest && tar xzf /src/wp-content.tar.gz"Importar o banco na VPS
Com os containers rodando, importe o banco exportado e ajuste a URL do site:
# Copiar dump para o container do banco
docker cp /opt/wordpress/wordpress-backup.sql wordpress-db-1:/tmp/
# Importar
docker compose exec db bash -c \
"mysql -u wp -p'${DB_PASSWORD}' wordpress < /tmp/wordpress-backup.sql"
# Atualizar a URL do site para o novo domínio/IP
docker compose exec wordpress wp search-replace \
'https://antigohospedagem.com.br' 'https://seudominio.com.br' \
--allow-root --skip-columns=guidTestar antes de trocar o DNS
Antes de trocar o DNS, teste o novo servidor apontando seu computador local para o IP da VPS via arquivo hosts:
# No seu computador (Linux/Mac): editar /etc/hosts
# Windows: C:\Windows\System32\drivers\etc\hosts
echo "IP_DA_VPS seudominio.com.br www.seudominio.com.br" >> /etc/hosts
# Testar no browser: https://seudominio.com.br
# Verificar: páginas, imagens, login admin, formulários, checkout
# Após validar, remover a linha adicionada ao hosts
# e trocar o DNS no registrador do domínio$ runstack deploy --plan starter
Não quer configurar manualmente?
Não quer configurar manualmente? Implante o WordPress em menos de 3 minutos com a Runstack. Infraestrutura da OPEN DATACENTER, com servidores no Brasil.