Introducción: preparar Windows para contenedores

Se aplica a: Windows Server 2022, Windows Server 2019, Windows Server 2016, Windows 10 y Windows 11

En este tutorial se describe cómo:

Requisitos previos

Windows 10 y 11

Para ejecutar contenedores en Windows 10 u 11, se necesita:

  • Un sistema de equipo físico en el que se ejecute Windows 10 u 11 Professional o Enterprise con Anniversary Update (versión 1607), o posterior.
  • Hyper-V debe estar habilitado.

Nota

A partir de la actualización 2018 de octubre de Windows 10, Microsoft ya no impide que los usuarios ejecuten un contenedor de Windows en modo de aislamiento de procesos en Windows 10 Enterprise o Professional para fines de desarrollo o pruebas. Para obtener más información, consulta Preguntas frecuentes.

Los contenedores de Windows Server usan aislamiento de Hyper-V de manera predeterminada en Windows 10 y 11 para ofrecer a los desarrolladores la misma versión y configuración de kernel que se usará en producción. Para obtener más información sobre el aislamiento de Hyper-V, consulte Modos de aislamiento.

Windows Server

En el caso de los entornos de desarrollo, para ejecutar contenedores de Windows Server necesitará un servidor físico o una máquina virtual que ejecute Windows Server.

Para las pruebas, puede descargar una copia de Windows Server 2022 Evaluation o de Windows Server Insider Preview.

Máquinas virtuales de Azure listas para contenedores

Para muchas aplicaciones y paradigmas de orquestación, es necesario crear e implementar sus propias máquinas virtuales personalizadas. Con la transición de compatibilidad de Windows Container Runtime a Mirantis, el entorno de ejecución de contenedores ya no se proporciona con una oferta de máquina virtual de Marketplace. En el resto de esta guía, se detalla cómo puede crear una máquina virtual para Azure con el entorno de ejecución de contenedores instalado y listo para usar.

Azure seguirá ofreciendo una experiencia integral completa y totalmente administrada mediante Azure Kubernetes Service tanto en la nube como en el entorno local. AKS y AKS-HCI son servicios totalmente administrados con una sobrecarga de administración inferior a la habitual con implementaciones personalizadas. La compatibilidad con el entorno de ejecución de contenedores se incluye en los servicios AKS y AKS-HCI de la suscripción de Azure.

Hay tres cosas que hay que tener en cuenta al considerar las siguientes opciones. Es necesario que la organización decida qué aspecto desea optimizar en cuanto a:

  1. ¿Qué complejidad tiene la implementación?
  2. ¿Cuál es el costo?
  3. ¿Cómo afecta a la carga de trabajo de producción?

Se proporciona cada uno de estos métodos como una opción para que la experiencia de construcción de máquinas virtuales de Azure listas para contenedores sea lo más fluida posible. Las siguientes subsecciones detallarán las ventajas y desventajas de cada opción junto con cómo empezar.

Azure Image Builder

La ventaja de usar Image Builder es que la configuración se realiza en tiempo de compilación y no tendría ningún efecto en la carga de trabajo en tiempo de ejecución; cuando el conjunto de escalado de máquinas virtuales crea una instancia de una nueva máquina virtual a partir de la imagen personalizada, la imagen ya se habrá preparado, por lo que no se debe emplear tiempo aquí y estará lista inmediatamente para ejecutar contenedores.

Sin embargo, Azure Image Builder puede ser más complejo en cuanto a la implementación y hay más pasos implicados que con las extensiones de script. Además, aunque el servicio Image Builder es gratuito, debe administrar el uso de proceso, almacenamiento y redes asociado al proceso de compilación (detalles adicionales aquí).

Para empezar a crear su propia imagen de máquina virtual con Windows Server, hemos creado una guía que detalla el proceso paso a paso. Se pueden usar los scripts de PowerShell que se mencionan a continuación junto con esta guía para instalar el entorno de ejecución de contenedores de su elección.

Sugerencia

Asegúrese de almacenar en caché las imágenes de contenedor que planea usar de forma local en la máquina virtual. Esto ayudará a mejorar la hora de inicio del contenedor después de la implementación. Los siguientes scripts le ayudarán a hacerlo.

Extensiones de script personalizado

Las extensiones de script personalizado son más rápidas de implementar y el costo es solo el precio nominal por almacenar el script en Azure o GitHub. Sin embargo, el script solo se puede ejecutar después de aprovisionar una máquina virtual, por lo que debe presupuestar más tiempo para preparar correctamente la máquina virtual en el momento de un escalado horizontal.

Con los scripts que se ofrecen a continuación, puede configurar los conjuntos de escalado de máquinas virtuales para instalar el entorno de ejecución de contenedores de su elección en el aprovisionamiento. Siga nuestra guía para obtener información sobre cómo configurar una extensión de script personalizado.

Instalación del entorno de ejecución de contenedores

Windows 10 y 11

Siga los pasos que se indican a continuación para instalar Docker en las ediciones Professional y Enterprise de Windows 10 u 11.

  1. Descargue e instale Docker Desktop y cree una cuenta de Docker si aún no tiene una. Puede crear una cuenta gratuita de Docker para usuarios personales o de pequeñas empresas; sin embargo, para empresas más grandes, hay una cuota mensual. Para más información, consulta la documentación de Docker.

  2. Durante la instalación, establezca el tipo de contenedor predeterminado en contenedores de Windows. Para cambiar una vez finalizada la instalación, puedes usar el elemento de Docker en la bandeja del sistema de Windows (como se muestra a continuación) o el siguiente comando en un símbolo del sistema de PowerShell:

    & $Env:ProgramFiles\Docker\Docker\DockerCli.exe -SwitchDaemon .
    

    Menú del área de estado de Docker con el comando

Windows Admin Center

Puede usar Windows Admin Center para configurar correctamente una máquina de Windows Server como host de contenedor. Para empezar, asegúrese de que tiene instalada la extensión de contenedores más reciente en la instancia de Windows Admin Center. Para obtener más información acerca de cómo instalar y configurar extensiones, consulte la documentación de Windows Admin Center. Con la extensión Contenedores instalada, establezca como destino la máquina de Windows Server que quiera configurar y seleccione la opción Contenedores:

Instalación de Docker

Haga clic en el botón Instalar. Windows Admin Center iniciará la configuración de Windows Server y Docker en segundo plano. Una vez completado el proceso, puede actualizar la página y ver las demás funcionalidades de la extensión Contenedores.

Imágenes del contenedor

Windows Server

Para ejecutar un contenedor de Windows, debe tener disponible en la máquina un entorno de ejecución de contenedores compatible. Los entornos de ejecución admitidos actualmente en Windows son Containerd, Moby y Mirantis Container Runtime.

En esta sección, se detallará el proceso de instalación de cada uno en su copia específica de Windows, incluido un conjunto de scripts de PowerShell que facilitan la instalación de cada entorno de ejecución en unos pocos pasos.

Docker Community Edition (CE) proporciona un entorno de ejecución estándar para contenedores, con una API y una interfaz de la línea de comandos (CLI) comunes. Lo administra la comunidad de código abierto como parte del proyecto Moby.

Para empezar a trabajar con Docker en Windows Server, hemos creado un script de PowerShell que configura el entorno para habilitar las características del sistema operativo relacionadas con contenedores e instalar el entorno de ejecución de Docker.

Invoke-WebRequest -UseBasicParsing "https://raw.githubusercontent.com/microsoft/Windows-Containers/Main/helpful_tools/Install-DockerCE/install-docker-ce.ps1" -o install-docker-ce.ps1
.\install-docker-ce.ps1

Para obtener más detalles de configuración, consulta Motor Docker en Windows.

Pasos siguientes

Nota:

Si ha leído esta guía y desea obtener instrucciones adicionales del equipo de productos de contenedores de Windows, puede ponerse en contacto con nosotros en github/Windows-Containers, donde encontrará información sobre cómo obtener un tiempo en el calendario del equipo del producto para chatear.

Ahora que el entorno se ha configurado correctamente, sigue el vínculo para obtener información sobre cómo ejecutar un contenedor.