¿Qué instalar y cómo no perder datos?
devdocker no migra automáticamente contenedores ni volúmenes de Docker Desktop. Esta página ordena las rutas según lo que ya tengas en el PC.
--fresh no es la instalación normal. Solo borra el stack devdocker
(Jenkins, postgres_data, mysql_data, etc.). No toca imágenes ni proyectos
que no sean de devdocker, pero sí destruye las bases del entorno develop si ya las tenías.
Qué va siempre vs opcional
Siempre en setup --deploy | Opcional (secret) |
|---|---|
| PostgreSQL, MySQL, MariaDB · Portainer · Proxy · Panel · Jenkins | SonarQube (INFRA_DEPLOY_SONARQUBE) · n8n (INFRA_DEPLOY_N8N) · cAdvisor (INFRA_DEPLOY_CADVISOR) · Oracle (ORACLE_DB_ENABLED) |
| Apps (ControlParking, etc.) | Después, con deploy control-parking — ver Apps |
Escenario A — Ya usas Docker Desktop (recomendado si tienes datos ahí)
Mantén Desktop. En Ubuntu (WSL) activa Settings → Resources → WSL integration para tu distro.
No marques “Instalar Docker Engine” ni --docker-engine en el wizard.
No uses --fresh si ya desplegaste devdocker y quieres conservar volúmenes.
cd ~/devdocker bash scripts/devdocker.sh update bash scripts/devdocker.sh sync bash scripts/devdocker.sh setup --deploy
Tus contenedores/volúmenes de otros proyectos en Desktop siguen en Desktop. devdocker crea sus volúmenes con nombres propios (jenkins_home, postgres_data, …).
Escenario B — Docker Engine en WSL (sin Desktop)
Para máquina nueva o cuando no necesitas migrar nada de Desktop:
curl -fsSL https://devdocker.desarrollado.com/devdocker-install.sh | bash -s -- --docker-engine --deploy --verify
Primera vez con reset total (opcional): añade --fresh.
Escenario C — Solo actualizar devdocker / un job
cd ~/devdocker bash scripts/devdocker.sh update bash scripts/devdocker.sh sync bash scripts/devdocker.sh secret bash scripts/devdocker.sh register bash scripts/devdocker.sh deploy db-mysql # ejemplo
Escenario D — App ControlParking sin reinstalar todo
Requisito mínimo: Jenkins + proxy + Docker funcionando. No hace falta --fresh.
Migrar datos desde Docker Desktop
devdocker no importa el disco interno de Desktop. Opciones manuales:
| Qué quieres conservar | Cómo |
|---|---|
| Imágenes | En Desktop: docker save → copiar tar a WSL → docker load en el daemon que use devdocker |
| Datos de un volumen | Contenedor temporal: montar volumen y tar czf del directorio; restaurar en volumen devdocker con otro contenedor |
| Stack compose propio | Exportar docker compose + .env; levantar en el mismo daemon (Desktop integrado o Engine) |
| Bases devdocker ya desplegadas | No ejecutar --fresh; backup con pg_dump / dump MySQL antes de cambios grandes |
No mezcles Docker Desktop y Docker Engine apuntando al mismo WSL Ubuntu: elige uno.
Ver install-docker-engine-wsl.md en el repo (coexistencia).
Coherencia wizard ↔ deploy
Los checkboxes Servicios del wizard (SonarQube, n8n, cAdvisor) se reflejan en el secret como INFRA_DEPLOY_* al instalar con variables de entorno, o edítalos en dev-enviroment.local.yaml.
INFRA_DEPLOY_SONARQUBE: "true" INFRA_DEPLOY_CADVISOR: "false" INFRA_DEPLOY_N8N: "false"