Guía Completa para Usar Docker Desktop con WSL sin Conflictos

Última actualización: 25/08/2026

  • Integración nativa de contenedores Linux mediante el kernel de WSL 2 para optimizar el rendimiento de CPU y memoria.
  • Configuración de la interoperabilidad entre la CLI de Docker en Windows y las distribuciones de Linux instaladas.
  • Gestión avanzada de volúmenes y rutas de archivos para evitar errores de montaje entre sistemas de archivos NTFS y ext4.

Cómo usar Docker Desktop junto con WSL sin conflictos

¿Cómo usar Docker Desktop junto con WSL sin conflictos? Si eres desarrollador y trabajas en Windows, probablemente ya sepas que montar un entorno de Linux puede ser un quebradero de cabeza si no se hace bien. La llegada de WSL 2 ha cambiado las reglas del juego, permitiéndonos ejecutar un kernel de Linux real dentro de nuestro sistema operativo sin que la máquina virtual nos coma todos los recursos del ordenador.

El problema viene cuando queremos meter Docker en la ecuación. Ya sea que busques la comodidad de Docker Desktop o que prefieras ir a lo bruto instalando el motor directamente en la distro, existen varias rutas para lograrlo. En este artículo vamos a desgranar todas las opciones para que tu flujo de trabajo sea fluido y no te vuelvas loco con errores de conexión al demonio.

docker en windows 10
Related article:
Cómo instalar Docker en Windows 10

La vía rápida: Docker Desktop con el backend de WSL 2

Terminal de Linux Ubuntu mostrando monitoreo de sistema y logs, representando el entorno de WSL y Docker.

Para la mayoría de los mortales, la opción más sencilla es instalar Docker Desktop y dejar que él haga el trabajo sucio. Al instalarlo, es fundamental marcar la casilla de compatibilidad con WSL 2, ya que esto sustituye la antigua arquitectura de Hyper-V por una mucho más ligera y veloz.

Contenido exclusivo - Clic Aquí  Cómo abrir un archivo BRSTM

Una vez instalado, no basta con darle a siguiente. Tienes que ir a los ajustes, entrar en Resources y luego en WSL Integration. Aquí es donde ocurre la magia: debes activar el interruptor de la distribución específica que estés usando (como Ubuntu o Debian). De esta forma, Docker Desktop crea sus propias distros internas, llamadas docker-desktop y docker-desktop-data, que gestionan el motor y los datos separadamente de tu entorno de desarrollo.

Programador trabajando con doble monitor y terminal visible, ideal para ilustrar un artículo sobre WSL y contenedores en Windows 11
Related article:
Cómo instalar WSL Containers en Windows 11

La alternativa para puristas: Docker Engine sin Docker Desktop

Ingeniero de software concentrado trabajando con un portátil y monitor externo en una oficina moderna.

Hay quien prefiere evitar el software de terceros y quiere instalar Docker directamente en su distribución de Linux. Para hacer esto, primero debes asegurarte de que tienes WSL 2 configurado como versión predeterminada mediante el comando wsl --set-default-version 2 y que la virtualización está activa en la BIOS de tu PC.

El proceso consiste en añadir los repositorios oficiales de Docker dentro de tu terminal de Linux, instalar el motor (docker-ce), la CLI y el plugin de Compose. Un truco vital aquí es ejecutar sudo usermod -aG docker $USER para que no tengas que estar escribiendo sudo cada vez que quieras levantar un contenedor, lo cual es un engorro considerable.

Laptop con código de programación sobre una mesa de madera, representando el trabajo de desarrollo con WSL en Windows 11.
Related article:
Cómo exponer puertos de contenedores WSL en Windows 11

Novedades con wslc.exe: Una nueva forma de contenerizar

Recientemente ha aparecido wslc.exe, una herramienta CLI que viene integrada en las versiones más modernas de WSL (específicamente desde la 2.9.3). Esta utilidad permite compilar y ejecutar contenedores de Linux sin necesidad de tener instalado un motor de Docker externo, simplificando la experiencia para quienes solo necesitan tareas básicas de contenedores.

Contenido exclusivo - Clic Aquí  Cómo crear diagramas técnicos con Excalidraw

Para aprovecharlo, es recomendable actualizar WSL con el comando wsl --update --pre-release. Con wslc puedes hacer desde un simple run hello-world hasta construir imágenes propias usando un Containerfile, integrándose a la perfección con Visual Studio Code y su extensión de WSL para depurar el código en tiempo real.

Solución de conflictos comunes y errores de conexión

Es muy frecuente toparse con el temido error «Cannot connect to the Docker daemon». Esto suele pasar por dos razones: o el servicio no ha arrancado, o hay restos de instalaciones antiguas que están confundiendo a la CLI. Si vienes de WSL 1, lo mejor es hacer una limpieza profunda eliminando carpetas como /var/lib/docker y limpiando las variables de entorno en tu archivo .bashrc.

docker
Related article:
Cómo acceder a los archivos de un contenedor Docker desde Windows

Otro punto crítico es la gestión de los volúmenes. Docker Desktop espera rutas tipo /c/Users/..., mientras que WSL usa /mnt/c/Users/.... Para solucionar este choque, puedes crear un archivo /etc/wsl.conf y configurar el montaje en la raíz (root = /), lo que hará que tus rutas de archivos sean compatibles y no tengas que andar haciendo enlaces simbólicos manuales que dan dolores de cabeza.

Contenido exclusivo - Clic Aquí  Recuperar Contraseña de Windows 10 Olvidada

Optimización del espacio y rendimiento

Los contenedores y las imágenes pueden devorar el disco duro rápidamente. Para evitar que tu partición de Windows se llene, es recomendable usar el comando wsl --manage <distro> --set-sparse true, que permite que el disco virtual sea disperso y recupere espacio automáticamente.

Asimismo, para mantener el sistema limpio, acostúmbrate a ejecutar docker system prune o wslc image prune periódicamente. Esto borrará todas aquellas imágenes y contenedores detenidos que solo están ahí ocupando espacio innecesario y ralentizando el sistema.

Laptop displaying code in a dark environment, representing a developer's workspace for WSL and Docker.
Related article:
Cómo optimizar el consumo de memoria y disco de WSL 2 y Docker