Introducción: ejecución del primer contenedor de Windows

Se aplica a: Windows Server 2022, Windows Server 2019, Windows Server 2016

En este tema se describe cómo ejecutar el primer contenedor de Windows, después de configurar el entorno, tal como se describe en Introducción: preparar Windows para contenedores. Para ejecutar un contenedor, primero se descarga una imagen base (en los contenedores, esto también se conoce como operación de incorporación), que proporciona la capa esencial de servicios del sistema operativo para el contenedor. A continuación, se crea y ejecuta una imagen de contenedor, que se basa en la imagen base. Para obtener los detalles, sigue leyendo.

Incorporación de una imagen base de contenedor

Todos los contenedores se crean a partir de imágenes de contenedor. Microsoft ofrece varias imágenes iniciales, denominadas imágenes base, entre las que puedes elegir (para más información, consulta Imágenes base de contenedor). Este procedimiento extrae (descarga e instala) la imagen base de Nano Server ligera.

  1. Abre una ventana de símbolo del sistema (como el símbolo del sistema integrado, PowerShell, o Windows terminal) y, a continuación, ejecuta el siguiente comando para descargar e instalar la imagen base:

    docker pull mcr.microsoft.com/windows/nanoserver:ltsc2022
    

    Si Docker no se inicia al intentar extraer la imagen, es posible que no se pueda acceder al demonio de Docker. Para resolver este problema, pruebe a reiniciar el servicio de Docker.

    Sugerencia

    Si ves un mensaje de error que indica no matching manifest for linux/amd64 in the manifest list entries, asegúrate de que Docker no está configurado para ejecutar contenedores de Linux. Para cambiar a contenedores de Windows en Docker, haga clic con el botón derecho en el icono de Docker y seleccione Cambiar a contenedores Windows. Para usar la línea de comandos para cambiar de contenedor, ejecute & $Env:ProgramFiles\Docker\Docker\DockerCli.exe -SwitchDaemon.

  2. Una vez finalizada la descarga de la imagen, lee el CLUF mientras esperas. Comprueba tu existencia en el sistema consultando el repositorio local de imágenes de Docker. Al ejecutar el comando docker images se devuelve una lista de imágenes instaladas.

    Este es un ejemplo de la salida que muestra la imagen de Nano Server.

    REPOSITORY             TAG                 IMAGE ID            CREATED             SIZE
    microsoft/nanoserver   latest              105d76d0f40e        4 days ago          652 MB
    

Ejecución de un contenedor de Windows

En este ejemplo simple, se creará e implementará una imagen de contenedor "Hola mundo". Para obtener la mejor experiencia, ejecuta estos comandos en una ventana de símbolo del sistema con privilegios elevados (pero no uses Windows PowerShell ISE; no funciona para las sesiones interactivas con contenedores, ya que los contenedores parecen bloqueados).

  1. Inicia un contenedor con una sesión interactiva desde la imagen de nanoserver escribiendo el siguiente comando en la ventana del símbolo del sistema:

    docker run -it mcr.microsoft.com/windows/nanoserver:ltsc2022 cmd.exe
    
  2. Una vez iniciado el contenedor, la ventana del símbolo del sistema cambia el contexto al contenedor. Dentro del contenedor, crearemos un archivo de texto "Hola mundo" simple y, a continuación, saldremos del contenedor escribiendo los siguientes comandos:

    echo "Hello World!" > Hello.txt
    exit
    
  3. Obtén el id. de contenedor para el contenedor del que acabas de salir mediante la ejecución del comando docker ps:

    docker ps -a
    
  4. Crea una nueva imagen "HelloWorld" que incluya los cambios en el primer contenedor que ejecutaste. Para ello, ejecuta el comando docker commit, reemplazando <containerid> por el id. de contenedor:

    docker commit <containerid> helloworld
    

    Una vez finalizado, tendrá una imagen personalizada que contiene el script de hola a todos. Esto puede verse con el comando docker images.

    docker images
    

    A continuación, presentamos un ejemplo de la salida:

    REPOSITORY                             TAG                 IMAGE ID            CREATED             SIZE
    helloworld                             latest              a1064f2ec798        10 seconds ago      258MB
    mcr.microsoft.com/windows/nanoserver   2022                2b9c381d0911        3 weeks ago         256MB
    
  5. Por último, ejecuta el nuevo contenedor con el comando docker run con el parámetro --rm que quita automáticamente el contenedor una vez que se detiene la línea de comandos (cmd.exe).

    docker run --rm helloworld cmd.exe /s /c type Hello.txt
    

    El resultado es que Docker creó un contenedor a partir de la imagen "HelloWorld" e inició una instancia de cmd.exe en el contenedor, y que el archivo cmd.exe leyó nuestro archivo y generó el contenido en el shell. Como último paso, Docker se detuvo y quitó el contenedor.

Ejecución de un contenedor de Windows mediante Windows Admin Center

Puede usar Windows Admin Center para ejecutar los contenedores localmente. En concreto, se usa la extensión de contenedores de la instancia de Windows Admin Center para ejecutar los contenedores. En primer lugar, abra el host de contenedor que quiera administrar y, en el panel Herramientas, seleccione la extensión Contenedores. A continuación, seleccione la pestaña Imágenes dentro de la extensión Contenedor del Host de Contenedor.

Pestaña Imágenes dentro de la extensión Contenedor

Si el host no tiene ninguna imagen base del contenedor, seleccione la opción Extraer para abrir la configuración de la imagen del contenedor de extracción:

Ventana de configuración de la imagen del contenedor de extracción

En la configuración de la imagen del contenedor de extracción, proporcione la dirección URL de la imagen y la etiqueta. Si no está seguro de la imagen que se va a extraer, Windows Admin Center proporciona una lista de imágenes comunes de Microsoft. También puede proporcionar las credenciales para extraer una imagen de un repositorio privado. Después de completar la información necesaria, haga clic en Extraer. Windows Admin Center iniciará el proceso de extracción en el host de contenedor. Una vez completada la descarga, debería ver la nueva imagen en la pestaña Imágenes.

Seleccione la imagen que quiera ejecutar y haga clic en Ejecutar.

Ventana de configuración de la ejecución de la imagen

En el menú Ejecutar, configure los parámetros del contenedor; p. ej., el nombre del contenedor, el tipo de aislamiento, los puertos que se van a publicar y la asignación de memoria y CPU. Además, puede anexar comandos de ejecución de Docker que no estén en la interfaz de usuario, como -v para el volumen persistente. Para obtener más información sobre los parámetros de ejecución de Docker disponibles, revise la documentación.

Cuando finalice la configuración del contenedor, haga clic en Ejecutar. Puede ver el estado de los contenedores en ejecución en la pestaña Contenedores:

Pestaña Contenedores que muestra los contenedores en ejecución

Pasos siguientes