window.pipedriveLeadboosterConfig = { base: 'leadbooster-chat.pipedrive.com', companyId: 11580370, playbookUuid: '22236db1-6d50-40c4-b48f-8b11262155be', versión: 2, } ;(function () { var w = window if (w.LeadBooster) { console.warn('LeadBooster ya existe') } else { w.LeadBooster = { q: [], on: function (n, h) { this.q.push({ t: 'o', n: n, h: h }) }, trigger: function (n) { this.q.push({ t: 't', n: n }) }, } } })() Camino sin dolor a WSL 2 con Docker - The Codest
The Codest
  • Quiénes somos
  • Servicios
    • Desarrollo de software
      • Desarrollo Frontend
      • Desarrollo backend
    • Staff Augmentation
      • Desarrolladores frontales
      • Desarrolladores de backend
      • Ingenieros de datos
      • Ingenieros de la nube
      • Ingenieros de control de calidad
      • Otros
    • Asesoramiento
      • Auditoría y consultoría
  • Industrias
    • Fintech y Banca
    • E-commerce
    • Adtech
    • Tecnología sanitaria
    • Fabricación
    • Logística
    • Automoción
    • IOT
  • Valor para
    • CEO
    • CTO
    • Gestor de entregas
  • Nuestro equipo
  • Case Studies
  • Saber cómo
    • Blog
    • Meetups
    • Seminarios en línea
    • Recursos
Carreras profesionales Póngase en contacto
  • Quiénes somos
  • Servicios
    • Desarrollo de software
      • Desarrollo Frontend
      • Desarrollo backend
    • Staff Augmentation
      • Desarrolladores frontales
      • Desarrolladores de backend
      • Ingenieros de datos
      • Ingenieros de la nube
      • Ingenieros de control de calidad
      • Otros
    • Asesoramiento
      • Auditoría y consultoría
  • Valor para
    • CEO
    • CTO
    • Gestor de entregas
  • Nuestro equipo
  • Case Studies
  • Saber cómo
    • Blog
    • Meetups
    • Seminarios en línea
    • Recursos
Carreras profesionales Póngase en contacto
Flecha atrás VOLVER
2020-01-21
Desarrollo de software

Una forma indolora de pasar a WSL 2 con Docker

Lukasz Kolko

Con la introducción del subsistema Windows para Linux (WSL), Microsoft ofreció a los desarrolladores la oportunidad de ejecutar un entorno GNU/Linux directamente en Windows, sin modificaciones y sin la sobrecarga de una máquina virtual. Es una gran solución porque muchos desarrolladores utilizan un sistema para programar y otro para entretenerse.

La WSL aún está en fase de desarrollo, pero actualmente es adecuada para las modernas desarrollo de softwaretanto en la primera como en la segunda versión. Hojeando los problemas y preguntas reportados en internet, la mayoría de ellos parecen referirse a la integración de WSL con Docker, especialmente cuando se trata de actualizar de WSL 1 a WSL 2.

Este artículo disipará todas las ambigüedades y te ayudará a pasar por este proceso sin dolor. Si no tienes WSL 1 y quieres tener WSL 2 con Docker, puedes saltar directamente al último capítulo.

¿Qué ganará?

- Kernel Linux estable más reciente (ajustado por Microsoft). WSL 1 tiene una interfaz de kernel compatible con Linux sin el kernel Linux código.

- Mayor rendimiento de la entrada/salida de archivos. Hasta 20 veces más rápido en comparación con WSL 1 al descomprimir un archivo tar comprimido, alrededor de 2-5 veces más rápido cuando se utiliza clonar git, npm instalar y cmake en diversos proyectos.

- Compatibilidad total con llamadas al sistema. Los binarios de Linux utilizan llamadas al sistema para realizar muchas funciones, como acceder a archivos, solicitar memoria, crear procesos y muchas más. Mientras que WSL 1 utilizaba una capa de traducción construida por la WSL equipoWSL 2 incluye su propio núcleo Linux, totalmente compatible con las llamadas al sistema.

- Archivos almacenados en una partición nativa ext4 en un disco virtual.

- Muy fácil de integrar con Docker.

Creo que para la mayoría de los usuarios el rendimiento de IO de archivos y la fácil integración de Docker parecen razones suficientes.

¡Vamos!

Supongo que tienes la última versión estable de Windows 10 Pro. En cuanto a hoy, es la versión 1909.

Únete a los iniciados en Windows

Actualmente, WSL 2 solo está disponible para Windows 10 en el anillo lento de insiders. Por lo que sé, la versión estable debería estar disponible en mayo de 2020 (versión 20H1). El anillo lento es bastante una solución segura para los usuarios que quieren tener nuevas características un poco antes, ya pre-probado por los usuarios del anillo rápido. El anillo lento recibe actualizaciones del sistema hasta una o dos veces al mes. Puedes leer más sobre los cambios en las versiones internas en el documento de Microsoft llamado Hub de vuelo.

Para participar, basta con seguir el enlace oficial de Microsoft guía. Es muy fácil y lleva unos 15 minutos sin perder ningún dato personal.

Actualizar WSL 1 a WSL 2

Siga la página oficial guía. También es muy fácil, un par de comandos de shell y ¡listo! Dependiendo de lo extenso que fuera tu Linux bajo WSL 1, esto puede llevar algún tiempo. Desafortunadamente, Microsoft no ha colocado una barra de progreso o información sobre el tiempo requerido, así que ten paciencia.

Limpieza

Esta es la parte más importante para la correcta cooperación de WSL 2 y Docker. Después de actualizar a WSL 2, muchos usuarios están tratando de forzar su versión de Docker para cooperar sin darse cuenta de que el equipo de Docker, especialmente para WSL 2, ha preparado una versión que lo hará todo por nosotros. Este es el último lanzamiento de la versión Docker Edge (su nombre beta) - "Docker Desktop WSL 2 backend". Esta versión, 2.1.7.0, está bien pulida y es candidata a la próxima versión estable.

Los usuarios que no tenían WSL 1 o acaban de instalar una nueva versión de WSL 2 están de suerte y pueden pasar inmediatamente al último capítulo.

Si no ha limpiado su Docker (en absoluto o correctamente) y no ha instalado la versión adecuada de Docker para WSL 2, puede encontrarse con algunos errores comunes, por ejemplo, Cannot connect to the Docker daemon at tcp://localhost:2375", "¿Se está ejecutando el demonio Docker?etc. En la mayoría de los casos, perderá tiempo si no sabe que debe adoptar un nuevo enfoque para intentar resolver estos errores. Para ello, primero debe eliminar completamente Docker de WSL y Windows, que no es un paso obvio.

El ejemplo más común de restos no eliminados es el antiguo enfoque de Docker para establecer la variable de entorno DOCKER_HOST=tcp://localhost:2375 bajo WSL 1 para cooperar con la opción Docker de Windows Exponer daemon en tcp://localhost:2375 sin TLS.

¿Cómo eliminar completamente Docker de WSL (Ubuntu)?

  1. Como el Docker oficial docs digamos:

sudo apt-get remove docker docker-engine docker.io containerd runc

Seguro que puede añadir a esta lista docker-ce y docker-ce-cli.

  1. Identifica todos los paquetes docker que tienes con dpkg -l | grep -i docker y eliminar si todavía existe alguno.
  2. Elimine todos los residuos:
sudo rm -rf /var/lib/docker /etc/docker /etc/apparmor.d/docker /var/run/docker.sock /usr/local/bin/docker-compose /etc/docker

sudo groupdel docker ~/.docker

  1. Este paso es para usuarios avanzados, así que ten cuidado. Probablemente no necesites hacerlo.

Buscar todos docker palabras y elimine aquellas de las que esté seguro.

sudo find / -name "*docker*"

  1. Compruebe el contenido de todos los archivos a continuación para docker ocurrencias como ej. variable de entorno DOCKER_HOST=tcp://localhost:2375.

Puedes editar estos archivos con el editor Nano, nano ~/.bashrco Visual Studio Code, código ~/.bashrc.

~/.bashrc
~/.bash_aliases
~/.bash_profile
~/.bash_login
~/.profile
/etc/bash.bashrc
/etc/profile

¿Cómo eliminar completamente Docker de Windows?

  1. Desinstalar de forma normal con Windows Aplicaciones y funciones panel.
  2. Elimine todo lo de abajo si existe:
C:Archivos de programaDocker
C:ProgramaDatosDockerDesktop
C:Usuarios[USERNAME].docker
C:Users[USERNAME]AppDataLocalDocker
C:Users[USERNAME]AppDataRoamingDocker
C:Users[USERNAME]AppDataRoamingDocker Escritorio

¿Y ahora qué?

Instale la última versión de Docker Desktop Edge desde aquí y siga los pasos de la página oficial docs. Todo se reduce a unos pocos clics.

Si todo va bien, usted debe tener su salida de wsl -l -v así:

  NOMBRE ESTADO VERSIÓN
  Ubuntu-18.04 En ejecución 2
  docker-desktop En ejecución 2
  docker-desktop-data En ejecución 2

Eso es todo. Docker ha creado sus propios contenedores WSL docker-desktop y docker-desktop-data. Algunos de los tutoriales o consejos disponibles pueden resultar confusos porque esta vez no debería instalar ni configurar nada relacionado con Docker en su distribución WSL de Linux. Es muy importante recordarlo. Después de la limpieza, debe funcionar bien de inmediato.

Además..

Configurar WSL 2 con Docker puede ser un proceso indoloro con unos sencillos pasos. Comience por actualizar listas de paquetes mediante el comando "sudo apt-get update" para asegurarse de que dispone de la información sobre la última versión. Resuelva cualquier dependencia que falte con "sudo apt-get install -y build-essential" para una instalación sin problemas. Instale Motor Docker con "sudo apt-get install -y docker-engine"para crear, ejecutar y gestionar contenedores sin esfuerzo. Ejecute "sudo docker run" seguido del nombre de la imagen para lanzar contenedores. Para mantener su entorno optimizado, ejecute periódicamente "sudo docker system prune" para eliminar los contenedores no utilizados y liberar espacio en disco. Con estos pasos, puedes disfrutar de la perfecta integración de WSL 2 y Docker para una contenerización eficiente en tu flujo de trabajo de desarrollo.

Artículos relacionados

Desarrollo de software

Crear aplicaciones web preparadas para el futuro: ideas del equipo de expertos de The Codest

Descubra cómo The Codest destaca en la creación de aplicaciones web escalables e interactivas con tecnologías de vanguardia, ofreciendo experiencias de usuario fluidas en todas las plataformas. Descubra cómo nuestra experiencia impulsa la transformación...

EL MEJOR
Desarrollo de software

Las 10 mejores empresas de desarrollo de software de Letonia

Conozca las principales empresas de desarrollo de software de Letonia y sus innovadoras soluciones en nuestro último artículo. Descubra cómo estos líderes tecnológicos pueden ayudarle a mejorar su negocio.

thecodest
Soluciones para empresas y escalas

Fundamentos del desarrollo de software Java: Guía para externalizar con éxito

Explore esta guía esencial sobre el desarrollo de software Java outsourcing con éxito para mejorar la eficiencia, acceder a la experiencia e impulsar el éxito de los proyectos con The Codest.

thecodest
Desarrollo de software

La guía definitiva para subcontratar en Polonia

El auge de las outsourcing en Polonia está impulsado por los avances económicos, educativos y tecnológicos, que fomentan el crecimiento de las TI y un clima favorable a las empresas.

TheCodest
Soluciones para empresas y escalas

Guía completa de herramientas y técnicas de auditoría informática

Las auditorías informáticas garantizan sistemas seguros, eficientes y conformes. Obtenga más información sobre su importancia leyendo el artículo completo.

The Codest
Jakub Jakubowicz CTO y Cofundador

Suscríbase a nuestra base de conocimientos y manténgase al día de la experiencia del sector informático.

    Quiénes somos

    The Codest - Empresa internacional de desarrollo de software con centros tecnológicos en Polonia.

    Reino Unido - Sede central

    • Oficina 303B, 182-184 High Street North E6 2JA
      Londres, Inglaterra

    Polonia - Centros tecnológicos locales

    • Parque de oficinas Fabryczna, Aleja
      Pokoju 18, 31-564 Cracovia
    • Embajada del Cerebro, Konstruktorska
      11, 02-673 Varsovia, Polonia

      The Codest

    • Inicio
    • Quiénes somos
    • Servicios
    • Case Studies
    • Saber cómo
    • Carreras profesionales
    • Diccionario

      Servicios

    • Asesoramiento
    • Desarrollo de software
    • Desarrollo backend
    • Desarrollo Frontend
    • Staff Augmentation
    • Desarrolladores de backend
    • Ingenieros de la nube
    • Ingenieros de datos
    • Otros
    • Ingenieros de control de calidad

      Recursos

    • Hechos y mitos sobre la cooperación con un socio externo de desarrollo de software
    • De EE.UU. a Europa: ¿Por qué las startups estadounidenses deciden trasladarse a Europa?
    • Comparación de los polos de desarrollo de Tech Offshore: Tech Offshore Europa (Polonia), ASEAN (Filipinas), Eurasia (Turquía)
    • ¿Cuáles son los principales retos de los CTO y los CIO?
    • The Codest
    • The Codest
    • The Codest
    • Privacy policy
    • Condiciones de uso del sitio web

    Copyright © 2025 por The Codest. Todos los derechos reservados.

    es_ESSpanish
    en_USEnglish de_DEGerman sv_SESwedish da_DKDanish nb_NONorwegian fiFinnish fr_FRFrench pl_PLPolish arArabic it_ITItalian jaJapanese ko_KRKorean nl_NLDutch etEstonian elGreek es_ESSpanish