Migrar desde Lerd, Herd, DDEV o Sail
Recuperar de una vez los sitios de Lerd, Laravel Herd, DDEV o Laravel Sail: proyectos y dominios, bases de datos copiadas en Joppa, .env reescrito con diff y copia de seguridad.
¿Ya usas Lerd, Laravel Herd, DDEV o Laravel Sail? Migrar a Joppa recupera tus sitios de una vez: cada sitio se convierte en un proyecto de Joppa con su dominio .test en HTTPS, sus bases de datos se copian en los servicios de Joppa y su .env se apunta a Joppa. La herramienta anterior solo se lee: sus archivos y sus bases de datos nunca se modifican, y solo se detiene si lo pides.
Ábrela desde:
- la pantalla de bienvenida, en el primer arranque: Migrar desde Lerd, Herd, DDEV o Sail…;
- Ajustes › Migrar a Joppa;
- la paleta ⌘ K: «Migrar desde Lerd, Herd, DDEV o Sail…»;
- el aviso del proxy, cuando Lerd, Herd, DDEV o Sail ocupa el puerto 443: Migrar sus sitios a Joppa… (consulta Puertos 80 y 443 ocupados).
1. Los sitios encontrados
Joppa busca los sitios de cada herramienta allí donde los guarda:

| Herramienta | Dónde busca Joppa | Bases de datos |
|---|---|---|
| Lerd | lerd sites, su archivo de sitios y .lerd.yaml en cada proyecto |
Sus contenedores de Podman (lerd-mysql, lerd-postgres), con las credenciales del .env del proyecto |
| Laravel Herd | Su configuración: las carpetas aparcadas (cada subcarpeta es un sitio) y los enlaces (herd link) |
Los servicios de Herd Pro en tu equipo (DB_HOST y DB_PORT del .env) |
| DDEV | ~/.ddev/project_list.yaml y .ddev/config.yaml |
El contenedor ddev-<proyecto>-db |
| Laravel Sail | Los contenedores laravel.test en marcha, y los docker-compose.yml con un servicio laravel.test |
Los servicios MySQL, MariaDB o PostgreSQL del archivo Compose |
Joppa también mira tus carpetas de código habituales (~/Code, ~/Sites, ~/Projects, ~/Herd…), un nivel por debajo. ¿Un proyecto en otro sitio? Añadir una carpeta… lo lee.
Cada sitio muestra sus dominios, su carpeta, sus bases de datos y su versión de PHP. Los sitios que todavía no están en Joppa aparecen marcados; los que ya están se indican con «ya está en Joppa». Marca los que quieres migrar y luego Preparar el plan.
2. El plan
Para cada sitio, antes de que cambie nada:
- El dominio: el de la herramienta si ya está en
.test(Lerd, Herd); si no,<nombre>.test(blog.ddev.sitepasa a serblog.test). Si ya está ocupado en Joppa,blog-2.test. Se enruta a127.0.0.1:8000, el puerto dephp artisan serve, o al servidor de desarrollo que Joppa detecta en un proyecto que no es Laravel. - Cada base de datos: su motor y su versión, su tamaño, de dónde se lee y el servicio de Joppa que la recibe («→ MySQL 8.4 en Joppa · tienda»). Si no hay ningún servicio compatible, Joppa crea uno, en la versión del origen si Joppa la ofrece y en un puerto libre («→ nuevo servicio PostgreSQL 17 (puerto 5433)»). ¿Ya existe una base de datos con el mismo nombre? Se usa el primer nombre libre (
tienda_import). - El
.env: el diff de lo que cambia (DB_HOST,DB_PORT,DB_DATABASE,DB_USERNAME,DB_PASSWORD,APP_URLenhttps://), con Ver los cambios.
Tres casillas por sitio:

| Casilla | Efecto |
|---|---|
| Copiar las bases de datos | Copia cada base de datos en su servicio de Joppa, como la importación desde Docker Compose: exportación con el cliente del origen, creación de la base de datos, restauración y luego comparación del número de tablas |
| Apuntar el .env a Joppa | Escribe el .env que muestra el diff. El original se guarda como .env.joppa-backup |
| Luego detener … | Detiene la herramienta anterior una vez migrado el sitio: lerd stop, herd stop, ddev stop <proyecto>, ./vendor/bin/sail stop |
3. La migración
Migrar N sitios encadena los pasos, sitio por sitio, con su progreso: proyecto, bases de datos, .env, detención. Un paso fallido no detiene los demás; el informe final indica, para cada sitio, lo que se ha hecho o por qué ha fallado, con Abrir para ir al proyecto. Volver a migrar un sitio ya migrado retoma su proyecto existente.
Si la herramienta anterior se ha detenido y el proxy de Joppa no estaba en marcha (la herramienta ocupaba el puerto 443), Joppa inicia su proxy al final.
Lo que no cambia
- Los archivos del proyecto, salvo el
.envsi lo has marcado (con copia de seguridad previa). - Las bases de datos de la herramienta anterior: solo se leen.
- La configuración de la herramienta anterior (sus sitios, sus enlaces, su DNS). Si conservas Lerd, Herd o Valet, su resolución de
.testsigue sirviendo a Joppa; si los desinstalas, Joppa propone colocar la suya (consulta La resolución de los dominios .test).