Detalles instalación FreeDOS


FreeDOS es un sistema operativo basado en MS-DOS, pero bajo licencia de software libre. Esta ISO contiene todo lo necesario para la instalación en equipos nuevos. Como anecdota desde 2014 la mascota de este sistema operativo tiene un nombre concreto: Blinky y lo cierto es que este SO ha tomado cierto protagonismo debido a un acuerdo con Microsoft, que impedía a los vendedores de ordenadores venderlos sin sistema operativo instalado, por lo que, por ejemplo,  Dell Computer ( y otros fabricante aun) ofreció algunos de sus sistemas de su «serie n» con FreeDOS preinstalado.​

Sobre todo el proyecto FreeDOS comenzó a proporcionar una alternativa a MS-DOS cuando Microsoft anunció en 1994 que dejaría de vender y dar soporte a su MS-DOS.

FreeDOS incluye algunas características que no estaban presentes en MS-DOS:

  • Controlador Ultra-DMA y soporte para discos grandes (LBA).
  • Soporta el sistema de archivos FAT32.
  • Controlador DOSLFN para usar los nombres de archivo largos de VFAT.
  • Licencia libre (GPL).
  • Soporte de internacionalización definida por el usuario.

Puede parecer retrogrado volver a una distribución de un SO tan básico, pero aunque parezca increíble todavía puede ser de utilidad para ciertas labores:

  • Ejecutar a la perfección aquellos juegos “retros” o antiguos que se solían jugar en MS-DOS.
  • Ejecutar aquellos programas que no funcionan del todo bien para el sistema operativo de Windows.
  • Este sw es capaz de desarrollar SO integrados en equipos que sean preferiblemente pequeños, pues se le da mejor esta función en aparatos que no tengan numeroso Hardware.
  • Cuestiones económicas pues el mercado siempre encontrará que dentro de los equipos de precio más asequible se encontrar aquellos que tienen FreeDos, dado a que esta es una de las opciones al no contar con “sistema operativo”, de tal manera que al iniciar su pc podrás realizar funciones básicas.

Los requisitos generales del sistema FreeDOS 1.3 («FreeDOS 1.3»):

  • Sistema compatible con DOS (Intel + BIOS, o UEFI con soporte Legacy)
  • Al menos 20MB de espacio libre en disco: 20 MB de sistema DOS simple
    30MB Sistema DOS simple, con fuentes 275 MB Instalación completa, incluyendo aplicaciones y juegos
    375 MB Instalación completa con fuentes

Además de la distribución «standard» se distribuyen varias versiones con diferentes complementos como pueden ser antiguos juegos para ms-dos, lo cual para los nostálgicos puede ser una bonita forma de reencontrase con estas joyas del sw.

Veamos mas claramente el contenido de cada fichero:

¿Qué hay en todos esos archivos zip?

FD13-LiveCD.zip

  • FD13BOOT.IMG – Imagen del disquete de arranque de la instalación básica de FreeDOS.
    Si su ordenador tiene una unidad de CD-ROM, pero no puede arrancar desde el Live CD
    o el CD Legacy. Utilize esta imagen de disquete para arrancar el sistema. Luego inserte el
    CD de instalación. El instalador de FreeDOS debería hacer el resto. Este disquete es sólo para propósitos de instalación y no proporciona un Entorno Vivo o Live.
  • FD13LIVE.ISO – El instalador de FreeDOS 1.3. La mayoría de los usuarios deberían
    utilizar esta imagen para instalar FreeDOS. Dependiendo de la configuración de su sistema informático y de su hardware. También puede usar el LiveCD para arrancar y ejecutar FreeDOS directamente desde el CD-ROM sin necesidad de instalarlo en tu disco duro.

FD13-LegacyCD.zip

  • FD13BOOT.IMG – Este archivo zip también contiene una copia del disquete de instalación básica en CD-ROM.
  • FD13LGCY.ISO – Una imagen de CD de arranque diseñada para hardware antiguo. Si no puede arrancar el LiveCD para instalar FreeDOS, pruebe esta imagen de disco. Esta imagen de disco utiliza el antiguo formato de CD de arranque El Torito. Algunos ordenadores ordenadores y máquinas virtuales más recientes no pueden utilizar este formato antiguo. A menos que que tenga un ordenador que requiera este tipo de CD de arranque, recomiendan sus autores utilizar el LiveCD en su lugar.

FD13-BonusCD.zip

  • FD13BNS.ISO – Una imagen de CD que no es de arranque y que contiene algunos paquetes de FreeDOS ,paquetes de FreeDOS que no están instalados como parte del LiveCD o el CD Legacy. Es precisamente en esta ISO donde podemos encontrar una gran cantidad de antiguos juegos . Desgraciadamente para instalar estos paquetes debemos antes instalar alguna de las versiones ya comentadas, siendo las mas normal la asociada a FD13-LiveCD.zip

FD13-LiteUSB.zip

  • FD13LITE.IMG – Un instalador mínimo de FreeDOS, como una imagen de USB. No contiene todos los paquetes del LiveCD o del LiveCD o el LegacyCD, y en su lugar sólo contiene un conjunto básico de
    paquetes de FreeDOS.
  • FD13LITE.VMDK – Un archivo de disco de máquina virtual, compatible con variedad de software de máquinas virtuales incluyendo VirtualBox, VMware, y otros sistemas. El uso de un archivo VMDK puede simplificar la instalación de FreeDOS. Sólo tiene que adjuntar la imagen imagen VMDK a su software de máquina virtual como un disco duro, y arrancarla. (Por favor, tenga en cuenta que todavía necesitará crear un disco duro virtual para instalar FreeDOS)

FD13-FullUSB.zip

  • FD13FULL.IMG – Sistema DOS simple e imagen de la memoria USB de instalación completa.
  • FD13FULL.VMDK – Un archivo de disco de máquina virtual, compatible con una variedad de software de máquinas virtuales. Simplemente adjunte la imagen VMDK a su máquina virtual como un disco duro, y arrancarlo.

VERIFY.TXT

  • Contiene los hashes MD5, SHA256 y SHA512 para todos los diferentes archivos de la versión. Puedes verificar tu copia de FreeDOS con estos.

README.TXT

  • El documento «antes de elegir e instalar». (Todos los archivos zip listados arriba también tienen una copia del archivo README).

FreeDOS Floppy-Only Edition (FD13-x86)

FreeDOS 1.3 incluye una edición sólo para disquetes. Esta edición debería funcionar en cualquier hardware que pueda ejecutar FreeDOS y tenga gráficos EGA o mejores:

  • ¿Tiene un ‘286 u otro sistema clásico sin unidad de CD-ROM?CD-ROM? Instale desde estos disquetes para instalar FreeDOS.
  • ¿Tiene sólo un disco duro y no tienes unidad de CD o disquetes? Simplemente copiar el contenido de los disquetes a un directorio temporal y ejecutar el instalador desde allí.
  • ¿Quiere realizar una instalación «sin cabeza» en un directorio de DOS diferente?Es fácil con las opciones de la línea de comandos.

La edición sólo para disquetes utiliza un instalador completamente diferente a los instaladores de CD-ROM o USB. Tampoco utiliza inguno de esos otros medios para instalar. Contiene un conjunto limitado de programas FreeDOS que son más útiles en el hardware clásico del PC. La Edición FreeDOS Floppy-Only se distribuye como un único archivo zip que contiene varias imágenes de disquetes ya hechas.

Estos archivos zip contienen archivos de imagen para varios medios de disquete comunes disquetes comunes en directorios separados:

  • 720k – imágenes de disquetes de 3,5″ 720k
  • 144m – imágenes de disquetes de 3,5″ de 1,44mb
  • 120m – imágenes de disquetes de 5,25″ y 1,2mb

Cada uno de estos conjuntos contiene una serie de imágenes de disco preconfeccionadas:x86BOOT.img – (una imagen de disco de arranque en disquete)

Cmpatibilidad

  • Windows Version 1.0 a 3.xx:No es posible iniciar ninguna versión de Windows basada en MS-DOS en modo extendido del 386, solo se puede iniciar Windows 3.0 en modo estándar, Windows 3.1 en modo estándar y las versiones de Windows 1.x y 2.x desde FreeDOS. No obstante, es posible sortear este problema usando un gestor de arranque o una herramienta similar, como la que viene con FreeDOS, para hacer una instalación paralela (con arranque dual) de FreeDOS y la versión de Windows en cuestión (decidiendo entre un sistema operativo y otro al arrancar).
  • Con Windows 95 a ME:Estas versiones de Windows están enlazadas al propio DOS que incorporan. No es posible ejecutarlas desde FreeDOS, pero se pueden instalar Windows y FreeDOS en la misma unidad C:, con la ayuda de un gestor de arranque tal como se ha descrito anteriormente, o con un gestor de arranque de GNU/Linux como LiLo o Grub.
  • Con Windows NT y ReactOS: Una instalación paralela con Windows NT y ReactOS no causa problemas porque estas versiones ya no usan un sistema DOS como sistema base. El núcleo de FreeDOS se puede añadir simplemente al gestor de arranque que estos sistemas operativos incluyen.

Una alternativa a FreeDOS es OpenDOS y EDR-DOS Enhanced DR-DOS. Este DOS es más compatible con Windows, pero la licencia es más restrictiva. OpenDOS está basado en el DR-DOS, propiedad de DeviceLogics y que se ofrece como shareware, y Enhanced DR-DOS basado en el OpenDOS.

¿Qué es free-dos?


Cuando compramos un ordenador, lo más frecuente es que traiga preinstalado alguna versión de Microsoft Windows, pero debemos tener en cuenta que aunque los fabricantes tengan una importante reducción del coste con las licencias OEM , siempre es un coste extra al fabricante que de una forma clara lo repercute en el cliente. Si bien podríamos pensar que si el usuario no desea gastarse ese coste extra, a causa de un acuerdo que Microsoft mantiene con los fabricantes, no pueden lanzar sus equipos al mercado sin ningún SO, así que en ocasiones, los fabricantes optan por ahorrar costes con algunos modelos, y preinstalan otro sistema operativo como FreeDOS , para que sea el usuario el que adquiera e instale posteriormente una copia de Windows… si ése es su deseo.

¡FreeDOS es un software de código abierto! No cuesta nada descargar y usar FreeDOS. ¡También puede compartir FreeDOS para que otros lo disfruten! Y puede ver y editar el código fuente, porque todos los programas FreeDOS se distribuyen bajo la Licencia Pública General GNU o una licencia de software de código abierto similar.

No solo esta el aspecto económico también puede haber otras razones para probar esta peculiar version de SO:

  • FreeDOS es un sistema operativo compatible con DOS de código abierto que puede usar para jugar juegos clásicos de DOS, ejecutar software comercial heredado o desarrollar sistemas integrados. Cualquier programa que funcione en MS-DOS también debería ejecutarse en FreeDOS.
  • Puede jugar a sus juegos de DOS favoritos en FreeDOS. Y hay un montón de grandes juegos clásicos para jugar: Wolfenstein 3D, Doom, Commander Keen, Rise of the Triad, Jill of the Jungle, Duke Nukem, ¡y muchos otros!
  • ¿Necesita recuperar datos de un antiguo programa comercial? ¿O tal vez necesita ejecutar un informe de su antiguo sistema financiero? Simplemente instale su software heredado en FreeDOS, ¡y estará listo para comenzar!
  • Muchos sistemas integrados se ejecutan en DOS, aunque los sistemas modernos pueden ejecutarse en Linux. Si admite un sistema integrado más antiguo, es posible que esté ejecutando DOS. Y FreeDOS puede encajar muy bien.

Además, por si los motivos anteriores no son suficientes el Proyecto FreeDOS acaba de ser reconocido con los siguientes premios por parte de SourceForge: Líder de la comunidad, Elección de la comunidad, Excelencia de código abierto y Favorito de SourceForge. Estos honores se otorgan solo para seleccionar proyectos que han alcanzado hitos significativos en términos de descargas y participación de los usuarios de la comunidad de SourceForge. Este es un gran logro, ya que su proyecto ha calificado para estos premios entre más de 500.000 proyectos de código abierto en SourceForge. SourceForge ve casi 30 millones de usuarios por mes buscando y desarrollando software de código abierto.

¿FreeDOS es realmente gratis?

Sí, FreeDOS es realmente gratis. No cuesta nada descargar y usar FreeDOS. ¡También puede compartir FreeDOS para que otros lo disfruten! Y puede ver y editar nuestro código fuente, porque todos los programas FreeDOS se distribuyen bajo la Licencia Pública General GNU o una licencia de software de código abierto similar .

¿Qué programas puedo ejecutar en FreeDOS?

FreeDOS es un sistema operativo completo, gratuito y compatible con DOS. Si bien proporcionamos algunas utilidades, debería poder ejecutar cualquier programa diseñado para MS-DOS. Prácticamente cualquier programa que funcione en MS-DOS funcionará en FreeDOS. ¡También puede usar FreeDOS en una red ! Sin embargo, puede experimentar problemas al ejecutar Windows en FreeDOS. Por ejemplo, el modo estándar de Windows funciona en FreeDOS, pero el modo 386 de Windows para trabajo en grupo 3.11 no.

Encontramos que la mayoría de la gente usa FreeDOS para hacer estas cosas:

1. Jugar juegos clásicos de DOS. Puedes jugar tus juegos de DOS favoritos en FreeDOS. Y hay un montón de grandes juegos clásicos para jugar: Wolfenstein 3D, Doom, Commander Keen, Rise of the Triad, Jill of the Jungle, Duke Nukem, ¡y muchos otros!

2. Ejecutar el software heredado. ¿Necesita recuperar datos de un antiguo programa empresarial? ¿O tal vez necesita ejecutar un informe de su antiguo sistema financiero? Simplemente instale su software heredado en FreeDOS, ¡y estará listo para comenzar!

3. Desarrollar sistemas integrados. Muchos sistemas integrados se ejecutan en DOS, aunque los sistemas modernos pueden ejecutarse en Linux. Si admite un sistema integrado más antiguo, es posible que esté ejecutando DOS. Y FreeDOS puede encajar muy bien.

Muchas personas también usan FreeDOS para instalar actualizaciones de firmware en sus computadoras.

¿Cómo instalo FreeDOS?

Para instalar, simplemente descargue la imagen del CD de instalación de FreeDOS. Escríbalo en un CD en blanco y arranque su ordenador con él. El programa de instalación automatizada debería guiarlo por el resto.

La distribución FreeDOS 1.2 está disponible en varios formatos:

  • Recomendamos el instalador de CDROM para la mayoría de los usuarios. La imagen de CDROM «estándar» debería funcionar en la mayoría de las computadoras y emuladores de PC. Las computadoras más antiguas pueden necesitar la imagen de CDROM «heredada» en su lugar.
  • Si su computadora no puede arrancar desde el CDROM, use el disquete de arranque. Escriba esta imagen en un disquete, inícielo e inserte el CDROM de instalación cuando se inicie el programa de instalación.
  • Si su computadora no tiene una unidad de CDROM, use el instalador de la unidad fob USB. Escriba esto en una unidad de control USB y arranque para iniciar la instalación. Las versiones «Full» y «Lite» instalan el mismo FreeDOS, pero el instalador «Lite» no contiene algunos paquetes de software adicionales.
  • También hay una guía para instalar FreeDOS como invitado en VirtualBox .

¿Qué necesito para ejecutar FreeDOS?

FreeDOS debe ejecutarse en cualquier PC estándar, aunque para un mejor rendimiento es posible que desee un procesador Intel ‘386 o superior, 2 MB o más de memoria y 40 MB de espacio en disco. Si es nuevo en DOS, le recomendamos que use un emulador de PC como VirtualBox para instalar y arrancar FreeDOS. Puede encontrar emuladores de PC para todas las plataformas informáticas (Windows, Linux, Mac). ¡Incluso puede ejecutar FreeDOS usando un emulador de PC escrito en Java, directamente en su navegador web!

FreeDOS debería ejecutarse en todo el hardware de la PC. Sin embargo, puede experimentar problemas de compatibilidad de hardware en computadoras muy antiguas.

¿Qué hace que FreeDOS sea mejor?

FreeDOS tiene muchas funciones modernas que no se encuentran en MS-DOS, o funciones que se han mejorado significativamente desde DOS, que incluyen:

  • Shell de línea de comandos de FreeCOM
  • Administración de energía FDAPM para información, control, suspensión, apagado, regulación ACPI y ahorro de energía HLT de APM
  • Controlador de mouse CuteMouse , con soporte de rueda de desplazamiento
  • Administrador de paquetes FDNPKG , con soporte de red
  • Impresiones gráficas en impresoras ESC/P, HP PCL y PostScript
  • Soporte de disco grande LBA y caché de disco LBACACHE
  • DOSLFN para soporte de nombre de archivo largo de DOS
  • Administrador de memoria JEMM386 y HIMEMX
  • Protección antivirus y antivirus FDSHIELD y ClamAV
  • Compatibilidad con el sistema de archivos FAT32
  • Herramientas y comandos similares a Linux, incluidos grep, cal, head, tee y menos

También:

  • Archive y respalde sus archivos con Zip, Unzip y 7zip
  • Navega por la web con Dillo y Arachne
  • Edite archivos con Edit , Biew, Blocek, E3, Freemacs , vim, Elvis, Pico, FED y otros editores
  • Escucha música y archivos de audio con Mplayer y OpenCP
  • Juega juegos de DOS de código abierto, incluidos Freedoom, Floppy Bird, Nethack, Sudoku y Tetris
  • Obtenga ayuda con la documentación integrada y el visor de ayuda
  • Arranque múltiple con Linux, Windows u otras versiones de DOS

Más que un clon, una actualización libre

Podemos instalar FreeDOS en un ordenador antiguo que conservemos, olvidado, en alguna caja, para hacer funcionar software heredado; o podemos instalarlo en nuestro flamante Windows 11, ya sea como parte del emulador DOSemu para jugar a videojuegos abandonware, o en una máquina virtual. Hay también quien lo utiliza como base para discos de recuperación del sistema o de creación de backups.

Y ese FreeDOS 1.3 lo ha hecho con varias novedades: FreeCOM (su intérprete de comandos) ha alcanzado la versión 0.85a, mientras que el kernel incluido en esta nueva versión es el 2043. La mayoría de los paquetes incluidos han recibido alguna mejora o actualización, mientras que también se han incluido otros nuevos, y se ha mejorado el sistema de instalación.

A todo esto se suma por primera vez la disponibilidad de una edición Live-CD de 375 MB que nos permite tanto instalar el sistema en nuestro disco duro como probarlo (junto a su catálogo total de software) sin necesidad de instalación. Además de para CD, existen otras ediciones de FreeDOS para diferentes soportes de almacenamiento, como USBs o disquetes, a partir de los 20 MB de peso.

Descargas disponibles

La ultima versión disponible es la FreeDOS 1.3 publicada el 20 de febrero de 2022 .Esta contiene un montón de excelentes características y mejoras nuevas desde la versión 1.2, que incluyen: nuevo FreeCOM 0.85a, nuevo Kernel 2043 y una versión 8086 con soporte para FAT32, la edición de disquete ahora usa compresión y requiere aproximadamente la mitad de disquetes, el regreso de las redes , algunos programas y juegos nuevos, muchas, muchas actualizaciones de paquetes, algunas actualizaciones y mejoras a NLS, proceso de instalación mejorado, especialmente con el MBR, algo de soporte para configurar automáticamente la información COUNTRY.SYS, inicialización de CD mejorada para los medios de arranque y el sistema instalado , … ¡y mucho, mucho más!

Estas son las versiones disponibles:

  • Descarga de FreeDOS 1.3:FreeDOS 1.3 Live CDLa mayoría de los usuarios deberían usar esto para instalar o probar FreeDOS 1.3. Si no desea instalar, puede usar el LiveCD para ejecutar una versión «en vivo» de FreeDOS que contiene muchos programas y utilidades útiles de FreeDOS.FD13-LiveCD.zip
  • CD extra de FreeDOS 1.3:No todo cabe en el LiveCD. Después de instalar FreeDOS, utilice este CD no arrancable para instalar otros paquetes que le resulten útiles.FD13-BonusCD.zip
  • CD heredado de FreeDOS 1.3:Si su sistema no admite el arranque desde LiveCD, intente instalar con LegacyCD. Esto instala el mismo FreeDOS 1.3, pero usa un método de arranque diferente.FD13-LegacyCD.zip
  • FreeDOS 1.3 FullUSB:¿Quiere instalar FreeDOS desde una unidad USB fob en su lugar? Descargue esta imagen y escríbala en una unidad USB fob.FD13-FullUSB.zip
  • FreeDOS 1.3 LiteUSB:Si prefiere el instalador USB pero necesita una imagen más pequeña, pruebe la versión Lite.FD13-LiteUSB.zip
  • FreeDOS 1.3 !Edición de disquete!.¡FreeDOS 1.3 incluye una edición solo para disquete! Esta edición debe ejecutarse en cualquier hardware que pueda ejecutar FreeDOS y tenga gráficos EGA o mejores.FD13-FloppyEdition.zip

Desde FreeDOS intentaron demostrar , con el lanzamiento de un vídeo (abajo) de la Release Candidate 5 de FreeDOS 1.3, qué tenía que aportar su sistema operativo al usuario. Ahí podemos ver el proceso de instalación del SO, el uso en directo de varios editores de texto y código, de videojuegos como Pacman y el Solitario, el funcionamiento de su administrador de ficheros, de su gestor de paquetes y de su sistema de ayuda basada en HTML.

FreeDOS en efecto es pues un sistema operativo de código abierto, un clónico del MS-DOS de Microsoft, el sistema de línea de comandos del que nació Windows en los 80. El propio FreeDOS nació en 1994 a manos de una sola persona, Jim Hall, inspirado por el recién nacido Linux y motivado por el anuncio de la inminente ‘muerte’ de MS-DOS a manos de Windows 95. Hall, a quien se le terminó uniendo un amplio grupo de desarrolladores, afirmaba hace un año que «hace mucho tiempo, decidimos que FreeDOS no debería ser únicamente un clon de MS-DOS, sino que debería intentar ser un DOS moderno«.»Y creo que el actual FreeDOS 1.2 (y el próximo FreeDOS 1.3) representan eso, dentro de las limitaciones que conlleva ser un sistema operativo de línea de comandos monotarea de 16 bits. FreeDOS puede hacer más de lo que MS-DOS podría hacer en su momento de mayor popularidad, e incluye toneladas de utilidades extra».

Configuración de Docker para Windows y WSL para funcionar sin problemas



En este post se espera que ya tenga WSL configurado. Aunque el demonio de Docker no se puede ejecutar directamente en WSL, puede usar la CLI de Docker para conectarse a un demonio remoto de Docker que se ejecuta a través de Docker para Windows o cualquier otra máquina virtual que cree (en este artículo se tratan ambos métodos).

Si se pregunta «¿por qué no solo ejecutar docker.exe y docker-compose.exe de Docker para Windows directamente en WSL?», esto se debe a un error al ejecutar Docker o Docker Compose de forma interactiva en ese entorno. El TL;DR es que no se puede ejecutar nada en primer plano con el modo interactivo, lo que lo hace inutilizable para el desarrollo web real.

Pero con la CLI de Docker configurada para el host remoto de Docker para Windows es realmente impresionante! Con este método, las aplicaciones rails muy grandes responden en ~100ms (o ~5s cuando tienen que compilar más de 10.000 líneas de Javascript y SCSS). ¡Eso también es con volúmenes montados!

Utilizo esta configuración casi todos los días para las aplicaciones impulsadas por Rails, Flask, Phoenix, Node y Webpack. Es muy sólido en términos de rendimiento y fiabilidad.

Configurar Docker para Windows (Docker Desktop)

En la configuración general, querrá exponer el demonio sin TLS.

Docker para Windows se ha cambiado recientemente a Docker Desktop,por lo que si la configuración se ve ligeramente diferente de la captura de pantalla, no se preocupe. Es lo mismo.

blog/docker-for-windows-expose-daemon-without-tls.jpg

Menciona «usar con precaución» porque cada vez que haces una conexión de red que no está encriptada, vale la pena hablar de ello, pero en este caso es completamente seguro porque nunca nos estamos conectando a ella a través de una red pública.

Esto va a permitir que la instancia WSL local se conecte localmente al demonio de Docker que se ejecuta en Docker para Windows. El tráfico ni siquiera sale de la caja de desarrollo, ya que el demonio solo está enlazado a localhostpor lo que ni siquiera otras máquinas de la red local podrán conectarse. En otras palabras, es muy seguro que estos datos se transmitan a través de texto sin formato.

También es posible que desee compartir las unidades en las que planea que resida el código fuente. Este paso no es necesario, pero mantengo mi código en un HD secundario interno, así que también compartí mi unidad «E». Si lo hace, realice la configuración «Unidades compartidas» y habilítela.

¿No puedes usar Docker para Windows?

¡Esto solo es necesario si NO está ejecutando Docker para Windows!

Querrá configurar su propia máquina virtual para ejecutar Docker. Docker Tip #73 entra en detalles sobre cómo hacerlo e incluso incluye vínculos a vídeos sobre cómo configurar la máquina virtual.

Instale Docker y Docker Compose en WSL

¡Todo el mundo puede seguir este punto!

Todavía necesitamos instalar Docker y Docker Compose dentro de WSL porque nos dará acceso a ambas aplicaciones cli. No nos molestaremos en empezar el demonio de Docker.

Las siguientes instrucciones son para Ubuntu 18.04 / 20.04, pero si utiliza una distribución WSL diferente, puede seguir la guía de instalación de Docker para su distro de los documentos de instalación de Docker.

Instalar Docker

Puede copiar / pegar todos los comandos a continuación en su terminal WSL.

Ubuntu 18.04 / 20.04 notas de instalación tomadas de la documentación de Docker:
# Update the apt package list.
sudo apt-get update -y

# Install Docker's package dependencies.
sudo apt-get install -y \
    apt-transport-https \
    ca-certificates \
    curl \
    software-properties-common

# Download and add Docker's official public PGP key.
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -

# Verify the fingerprint.
sudo apt-key fingerprint 0EBFCD88

# Add the `stable` channel's Docker upstream repository.
#
# If you want to live on the edge, you can change "stable" below to "test" or
# "nightly". I highly recommend sticking with stable!
sudo add-apt-repository \
   "deb [arch=amd64] https://download.docker.com/linux/ubuntu \
   $(lsb_release -cs) \
   stable"

# Update the apt package list (for the new apt repo).
sudo apt-get update -y

# Install the latest version of Docker CE.
sudo apt-get install -y docker-ce

# Allow your user to access the Docker CLI without needing root access.
sudo usermod -aG docker $USER

En este punto debe cerrar el terminal y abrir uno nuevo para poder ejecutar Docker sin sudo. ¡Será mejor que lo hagas ahora!

Instalar Docker Compose

Vamos a instalar Docker Compose usando PIP en lugar del binario precompilado en GitHub porque se ejecuta un poco más rápido (ambas siguen siendo aplicaciones de Python).

# Install Python 3 and PIP.
sudo apt-get install -y python3 python3-pip

# Install Docker Compose into your user's home directory.
pip3 install --user docker-compose

El siguiente paso es asegurarse de que $HOME/.local/bin esté establecido en su $PATH.

Puede comprobar si ya está configurado ejecutando echo $PATH. Dependiendo de la distro WSL que utilice, es posible que vea o no /home/nick/.local/bin (reemplace nick por su nombre de usuario).

Si está ahí, puedes ir y puedes saltar a la siguiente sección de este post.

Si no está allí, querrá agregarlo a su $PATH. Puede hacerlo abriendo su archivo de perfil con nano ~/.profile. A continuación, en cualquier parte del archivo, en una nueva línea, agregue export PATH="$PATH:$HOME/.local/bin" y guarde el archivo.

Por último, ejecute source ~/.profile para activar el nuevo $PATH y confirmar que funciona ejecutando echo $PATH. Deberías verlo allí ahora. ¡hecho!

Configurar WSL para conectarse a Docker para Windows

El siguiente paso es configurar WSL para que sepa cómo conectarse al demonio remoto de Docker que se ejecuta en Docker para Windows (recuerde, está escuchando en el puerto 2375).

Si no usa Docker para Windows y siguió la guía de Docker Tip #73 para crear su propia máquina virtual, probablemente ya lo hizo, lo que significa que puede omitir el siguiente comando.

Conéctese a un demonio remoto de Docker con este 1 revestimiento:

echo "export DOCKER_HOST=tcp://localhost:2375" >> ~/.bashrc && source ~/.bashrc

Eso sólo tiene que añadir la línea de exportación a su archivo .bashrc para que esté disponible cada vez que abra su terminal. Los comandos source recargan la configuración bash para que no tengas que abrir un nuevo terminal ahora mismo para que surta efecto.

Verificar que todo funciona

# You should get a bunch of output about your Docker daemon.
# If you get a permission denied error, close + open your terminal and try again.
docker info

# You should get back your Docker Compose version.
docker-compose --version

Garantizar el trabajo de montajes por volumen

Lo último que tenemos que hacer es configurar las cosas para que el volumen funcione. Esto me tropezó por un tiempo porque echa un vistazo a esto…

Al usar WSL, Docker para Windows espera que proporcione las rutas de volumen en un formato que coincida con esto: /c/Users/nick/dev/myapp.

Pero, WSL no funciona así. En su lugar, utiliza el formato /mnt/c/Users/nick/dev/myapp Honestamente, creo que Docker debería cambiar su camino para usar /mnt/c porque está más claro sobre lo que está pasando, pero esa es una discusión para otro momento.

Para que las cosas funcionen por ahora, tiene 2 opciones. Si está ejecutando Windows 18.03 (primavera de 2018) o más nuevo, puede configurar WSL para que se monte en / en lugar de /mnt y ya está todo listo. Si tienes 17.09 (otoño de 2017) tendrás que hacer otra cosa.

Estas son las instrucciones paso a paso para ambas versiones de Windows:

¿Ejecutando Windows 10 18.03+ o Newer?

En primer lugar, abra un terminal WSL porque necesitamos ejecutar algunos comandos.

Cree y modifique el nuevo archivo de configuración WSL:
sudo nano /etc/wsl.conf

# Now make it look like this and save the file when you're done:
[automount]
root = /
options = "metadata"

Tenemos que establecer root = / porque esto hará que sus unidades montadas en /c o /e en lugar de /mnt/c o /mnt/e.

La línea options = "metadata" no es necesaria, pero corregirá los permisos de carpeta y archivo en los soportes WSL para que todo no sea 777 todo el tiempo dentro de los soportes WSL. Recomiendo encarecidamente que hagas esto!

Una vez que realice esos cambios, cierre la sesión e inicie sesión en Windows para asegurarse de que los cambios surtan efecto. Win + L no es suficiente. Tendrás que hacer un cierre de sesión en toda regla / iniciar sesión.

Si recibes un error la próxima vez que inicies tu terminal WSL no te asustes.

Es un error con 18.03 y se puede solucionar fácilmente. Pulse CTRL + Shift + ECS para abrir el administrador de tareas, vaya a la pestaña «Servicios», busque el servicio «LxssManager» y reinícielo.

Esto parece suceder sólo si cierra la sesión de Windows en lugar de hacer un reinicio completo y probablemente se corregirá en un parche futuro de 18.03+.

Una vez hecho esto, estás listo. Podrás acceder a tus monturas y funcionarán perfectamente con Docker y Docker Compose sin ningún ajuste adicional. Por ejemplo, podrás usar .:/myapp en un archivo docker-compose.yml, etc.

¿Qué emulador de terminal está utilizando?

Si usa ConEmu, entonces querrás asegurarte de actualizar a la versión alfa más reciente (al menos 18.05.06+ que puedes ver en la barra de título de la configuración). Contiene un archivo wslbridge.exe parcheado para admitir un punto de montaje raíz WSL personalizado.

El terminal WSL de Ubuntu predeterminado es compatible con esto de forma predeterminada, por lo que todos son buenos. No sé si otros terminales apoyan esto todavía. Hágamelo saber en los comentarios.

¡Ya terminaste! Puede omitir los pasos de 17.09 a continuación si siguió los pasos anteriores.

¿Ejecutando Windows 10 17.09?

En primer lugar, abra un terminal WSL porque necesitamos ejecutar algunos comandos.

Enlazar puntos de montaje personalizados para corregir las diferencias de Docker para Windows y WSL:
sudo mkdir /c
sudo mount --bind /mnt/c /c

Querrá repetir esos comandos para las unidades que compartió, como d o eetc.

Compruebe que funciona ejecutando: ls -la /c. Debería ver la misma salida exacta que la ejecución ls -la /mnt/c porque /mnt/c está montado en /c.

En este punto eres de oro. Puede utilizar rutas de montaje por volumen como .:/myapp en sus archivos de Docker Compose y todo funcionará como normal. Eso es increíble porque ese formato es lo que los usuarios nativos de Linux y MacOS también utilizan.

Vale la pena señalar que cada vez que ejecute un docker-compose up, querrá asegurarse de navegar primero a la ubicación /c/Users/nick/dev/myapp de lo contrario su volumen no funcionará. En otras palabras, nunca acceda a /mnt/c directamente.

Técnicamente se podía utilizar un enlace simbólico en lugar de un montaje de enlace, pero me han quemado en el pasado cuando se trataba de usar enlaces simbólicos y tener ciertas herramientas no funcionan porque no las siguieron correctamente. Mejor seguro que lo siento aquí.

Sin embargo, siéntase libre de utilizar enlaces simbólicos dentro de WSL para acceder a su montaje de enlace. Por ejemplo, mi carpeta Dev vive todo el camino en /e/Backup/VMs/workstation/home/nick/Dev y no hay manera en heck siempre voy a escribir eso cuando quiera acceder a mis archivos de desarrollo.

Así que dentro de WSL creé un symlink con ln -s /e/Backup/VMs/workstation/home/nick/Dev ~/Dev y ahora sólo puedo escribir cd ~/Dev para acceder a mis archivos y todo funciona.

Configure automáticamente el soporte de enlace:

Desafortunadamente tendrás que ejecutar ese comando sudo mount cada vez que abras un nuevo terminal porque WSL no admite el montaje a través de /etc/fstab todavía (editar: lo hace en 18.09+, pero si estás usando 18.09+ debes seguir los pasos de 18.03+).

Pero podemos evitar esa limitación simplemente montándola en su archivo ~/.bashrc Esto está un poco sucio, pero por lo que sé, creo que esta es la única manera de hacerlo, así que si sabes de una mejor manera, por favor hágamelo saber.

Puede hacerlo con este 1 revestimiento: echo "sudo mount --bind /mnt/c /c" >> ~/.bashrc && source ~/.bashrc y asegúrese de repetir el comando para las unidades adicionales que compartió con Docker para Windows. Por cierto, no necesitas mkdir porque ya lo hicimos.

Sí, lo sé, eso significa que usted será rápido para su contraseña raíz cada vez que abra un terminal, pero podemos evitarlo también porque Linux es genial así.

Permita que el usuario vincule un soporte sin una contraseña raíz:

Para ello, ejecute el comando sudo visudo

Eso debería abrir nano (un editor de texto). Goto la parte inferior del archivo y añadir esta línea: nick ALL=(root) NOPASSWD: /bin/mount, pero reemplace «nick» por su nombre de usuario.

Eso sólo permite a su usuario ejecutar el comando sudo mount sin tener que proporcionar una contraseña. Puede guardar el archivo con CTRL + O, confirmar y salir con CTRL + CTRL + X.

Misión completa. Todos están listos para ganar en la vida mediante Docker para Windows y WSL.

blog/cards/getting-docker-for-windows-and-wsl-working-together.jpg