Docker en Windows con WSL: elige una instalación clara
Puedes trabajar con contenedores Linux en Windows mediante Docker Desktop integrado con WSL 2. También existen instalaciones de Docker Engine dentro de una distribución WSL, pero no conviene mezclarlas sin saber a qué daemon se conecta cada terminal.
Esta guía prioriza Docker Desktop para un flujo habitual de desarrollo y explica qué revisar si eliges la alternativa.
Comprueba WSL
Desde PowerShell, utiliza los comandos apropiados a tu instalación:
wsl --status
wsl --version
wsl --list --verbose
Si necesitas instalarlo, sigue el procedimiento oficial de Microsoft y sus requisitos de virtualización. Reinicia cuando se indique.
wsl --set-default-version 2 cambia la versión predeterminada para nuevas distribuciones; no convierte automáticamente todas las que ya existen. Comprueba la versión de la distribución concreta antes de continuar.
Instala Desktop desde el proveedor oficial
Verifica requisitos de Windows, WSL, arquitectura y recursos en la documentación actual. Revisa también las condiciones de licencia para tu tipo de uso: una guía técnica no debe prometer gratuidad universal.
Durante la configuración, activa el backend e integración WSL que correspondan y selecciona tu distribución. Inicia Docker Desktop y espera a que el motor esté preparado.
Comprueba desde la distribución correcta
Abre tu terminal Ubuntu en WSL y ejecuta:
docker version
docker compose version
docker context ls
docker run --rm hello-world
Revisa las secciones de cliente y servidor y el contexto activo. Si un comando funciona en PowerShell pero no en WSL, verifica la integración antes de instalar otro daemon.
Las imágenes y volúmenes pertenecen al entorno al que te conectas. Cambiar de contexto puede hacer que parezca que desaparecieron, aunque sigan en otro motor.
Dónde guardar los proyectos
Para trabajo intensivo con herramientas Linux, revisa las recomendaciones de WSL sobre ubicación de archivos y rendimiento. No todos los accesos entre sistemas de archivos tienen las mismas características.
Mantén código, dependencias y permisos coherentes con el entorno que ejecuta las herramientas. Una carpeta compartida con Windows puede introducir diferencias de permisos o finales de línea que debes conocer.
Alternativa: Engine dentro de WSL
Si decides instalar Engine en la distribución, utiliza el procedimiento oficial para esa distribución y comprueba cómo se administran los servicios, incluido systemd cuando esté habilitado.
No añadas un sudo service docker start a cada apertura de shell como solución universal. Define un arranque coherente y evita dos motores que compitan o creen conjuntos distintos de recursos.
Puertos, recursos y persistencia
Comprueba cómo se accede a los puertos desde Windows y desde otras máquinas según la configuración. Publicar en loopback es una decisión diferente de exponer un servicio en la red.
Revisa límites de memoria y disco y no confundas un archivo virtual que creció con datos que puedes borrar manualmente. Utiliza los mecanismos documentados de mantenimiento y respaldo.
Si debes retirar o reinstalar
Antes de restablecer Desktop o eliminar una distribución, identifica código, bases de datos y volúmenes. Una opción de restablecimiento puede destruir recursos locales.
Exportar una distribución y respaldar aplicaciones son tareas relacionadas pero no idénticas. Para una base importante, conserva también una copia consistente y una restauración comprobada.
Preguntas frecuentes
¿Necesito Desktop y Engine dentro de Ubuntu a la vez?
No para el flujo habitual descrito. Elige un diseño y entiende su contexto antes de añadir otro motor.
¿WSL 2 está activado para todas mis distribuciones?
No necesariamente. Comprueba wsl --list --verbose y el procedimiento de conversión de la distribución concreta.
¿Mis datos están protegidos por estar en un volumen?
Un volumen aporta persistencia dentro de su entorno, no respaldo frente a eliminación, corrupción o pérdida del equipo.
En pocas palabras
Docker Desktop con integración WSL y Docker Engine dentro de una distribución son diseños diferentes. Elegir uno y comprobar su contexto evita confundir imágenes, volúmenes y servicios.
Conclusión
Verifica distribución, contexto y ubicación de los datos antes de trabajar con proyectos. Conserva una estrategia de respaldo de WSL y del almacenamiento persistente de tus aplicaciones.
Para continuar, revisa Docker: qué es y cómo usarlo para ejecutar contenedores y Cómo instalar Docker en Ubuntu 24.04: guía práctica paso a paso.
