Hace rato que vengo migrando cosas a Docker para tener despliegues más prolijos y replicables. Tenía un WordPress que corría en una VPS con NGINX + PHP-FPM, y me picaba el bicho de pasarlo a Coolify para simplificar gestión, backups y monitoreo sin meterme en paneles gigantes. En este video/post te muestro cómo lo encaré: base de datos, archivos y dominio. Nada de humo, paso a paso y sin romper (demasiado) nada.
Si todavía no tenés Coolify corriendo, te dejé un video cortito para levantarlo en 5 minutos. Más abajo te lo enlazo.
Lo importante de la migración (cortito y al pie)
1) Antes de tocar nada: checklist
- Hacé un backup completo (DB + wp-content).
- Bajá el TTL del DNS si vas a mover el dominio (para propagar más rápido).
- Activá “mantenimiento” en WordPress si esperás tráfico.
- Anotá versiones de PHP, plugins y tema. Evitá sorpresas.
2) Respaldos que necesitás
- Base de datos:
- mysqldump -u USUARIO -p BASE > backup.sql
- Archivos:
- Lo crítico es wp-content (uploads, plugins, themes).
- Podés comprimirlo: tar czf wp-content.tar.gz wp-content
Tip: probá restaurar localmente aunque sea un pedacito. Te ahorra dolores de cabeza después.
3) Preparar el entorno en Coolify
- Creá un “Proyecto” y dentro, un servicio de base de datos (MySQL/MariaDB).
- Creá el servicio de WordPress como contenedor. En mi caso usé la imagen oficial (Apache), porque es simple y estable.
- Variables de entorno clave en WordPress:
- WORDPRESS_DB_HOST
- WORDPRESS_DB_NAME
- WORDPRESS_DB_USER
- WORDPRESS_DB_PASSWORD
- Opcional: WP_HOME y WP_SITEURL para fijar el dominio.
- Volúmenes/persistencia:
- Montá al menos /var/www/html/wp-content como almacenamiento persistente.
Coolify te resuelve el proxy y los certificados SSL automáticamente cuando asignás el dominio al servicio. Un golazo.
4) Restaurar la base de datos
- Creá la base con las credenciales que definiste en Coolify.
- Importá el backup:
- mysql -h HOST -u USUARIO -p BASE < backup.sql
- Si preferís GUI, podés tirar un Adminer en otro contenedor y hacer el import desde ahí.
5) Subir wp-content
- Subí tu wp-content al volumen del contenedor (por SFTP del servidor, rsync, o la forma que te quede cómoda).
- Asegurate de que los permisos estén razonables (www-data suele ser el usuario dentro del container).
6) Ajustes finos
- Search/replace de URLs si cambiaste dominio o de http→https:
- wp search-replace 'http://tusitio.com' 'https://tusitio.com' --all-tables
- Revisá permalinks desde el admin y guardalos (fuerza el .htaccess/permalinks).
- Aumentá límites si hace falta (upload_max_filesize, memory_limit) con PHP ini/env o .htaccess según tu imagen.
7) Dominio y SSL
- Apuntá el A/AAAA del dominio a la IP de la VPS con Coolify.
- Asigná el dominio al servicio en Coolify y activá SSL. Certificado automático y listo.
8) Pruebas y monitoreo
- Dashboard, posts, media, login y búsquedas.
- Cron y tareas programadas (wp-cron o cron real).
- Backups automáticos del volumen y de la DB (programalos, posta).
Problemas comunes (y cómo los resolví)
- “Subo imágenes y no aparecen”: permisos o ruta del volumen. Verificá que wp-content esté montado y escribible.
- “Redirecciones raras”: hacé search-replace de URLs y definí WP_HOME/WP_SITEURL.
- “Error 502/504”: revisá memoria/CPU de la VPS. WordPress a veces pide un poco más, sobre todo con imágenes grandes y plugins pesados.
- “Mi plugin necesita extensiones de PHP”: elegí una imagen de WordPress con las extensiones necesarias o agregalas en un Dockerfile custom.
Recursos que te dejan a punto
- Desplegá Coolify en 5 minutos: https://youtu.be/DAaXdNrcTV0
- Guía escrita (paso a paso con comandos): https://www.codigomate.com/migra-tu-wordpress-en-vps-a-coolify-con-docker/
- ¿VPS nueva? Tenés 20€ gratis en Hetzner: https://hetzner.cloud/?ref=Sswaf20wbckq
Mirá el video
Cierre
Migrar un WordPress no es magia: son tres piezas que se mueven juntas —base, archivos y dominio— y con Docker + Coolify queda todo más predecible y fácil de mantener. Si te sirvió, compartilo con esa persona que tiene el WordPress colgando de un hilo en un VPS viejo. Y si te pinta, dejame en los comentarios qué te gustaría migrar después. Nos vemos en el próximo con otro mate y más despliegues.
![]()

