Docker es una de las herramientas más usadas por los desarrolladores, sin embargo, usarlo en Windows tiene algunas características especiales que deberás conocer.
Tabla de contenidos
¿Cómo funciona Docker en Windows?
Como ya comenté en la entrada general para aprender docker, Docker aprovecha una serie de características del Kernel de Linux para conseguir seguridad y aislamiento de cada contenedor. Esto no lo soporta Windows, así que en un primer momento Windows necesitaba crear una máquina virtual Linux, para ejecutar Docker en ella. Básicamente eso era lo que hacía Docker Desktop, como puedes ver en la siguiente imagen:
Sigue leyendo si queres saber otra manera de hacerlo funcionar
¿Es necesario usar Windows 10 Pro?
Como seguramente te preguntarás, ¿se puede usar Docker sin Windows 10 Pro?, esta pregunta debe ser contestada con un depende. Por una parte Hyper-V necesita de Windows 10 Pro para instalarse y como he dicho anteriormente, Docker se apoya en Hyper-V para funcionar, así que sí sería necesario. Sin embargo, hay otra manera de hacerlo funcionar usando WSL.
Usando Docker y Windows Subsystem for Linux (WSL)
Una de las novedades que ha traído Windows 10 en sus últimas versiones es el Windows Subsystem for Linux (WSL). Esto básicamente es una implementación del kernel de Linux bajo Windows, sin necesidad de realizar una emulación vía Hyper-V. Lo cual trae multitud de ventajas como poder usar programas típicos de Linux sin tener que recompilarlos para Windows, acceder a sistemas de archivos usados en distribuciones Linux, etc.
Uno de los grandes beneficiados del WSL es Docker, ya que en las últimas versiones permite utilizar este sistema en lugar de Hyper-V. Esto tiene varias implicaciones:
- Una gran mejora en el rendimiento, ya que con Hyper-V el acceso a los ficheros era lento
- La posibilidad de usarlo en cualquier versión de Windows, no solo en Windows 10 Pro.
- Al no usar Hyper-V puedes utilizar otro emulador/virtualizador como VirtualBox para desarrollar lo que necesites
Si estás preparado para usar Docker bajo WSL 2 (necesitas la versión de Windows 10 2004) obtendrás un mensaje similar al siguiente:
Te recomiendo personalmente pasarte a este modo cuanto antes, ya que como comentan en el blog de Docker, las mejoras de rendimiento son enormes. Por ejemplo una reducción en el tiempo de arranque de más de un minuto a 10 segundos.
Finalmente deberás instalar la última versión del kernel del WSL, que se encuentra aquí.
¿Qué es Docker Desktop?
Docker Desktop es un programa para Windows que permite instalar el daemon de Docker, así como una interfaz de usuario para gestionarlo y la configuración interna para que funcione en Windows. En la siguiente captura puedes ver Docker Desktop y cómo yo ya estoy usando Docker bajo WSL 2.
Finalmente debes configurar una distribución bajo WSL 2:
Espero que este artículo resuelva tus dudas sobre Docker en Windows y te ayude a clarificar algunos conceptos.
Un saludo.