Si es nuevo en Docker y desea aprender a crear su primer contenedor Docker Windows Server, tiene suerte. En este artículo, aprenderá cómo comenzar desde cero, ¡no se necesita experiencia previa!
¿No eres un lector? Mira este video relacionado. ¿No ve el video? Asegúrate de que tu bloqueador de anuncios esté deshabilitado.Windows Server ha recorrido un largo camino desde Windows NT. Primero, podríamos virtualizar Windows Server, y ahora incluso podemos jugar en el ámbito de lo que alguna vez fue una función exclusiva de Linux:¡los contenedores!
Hoy en día, podemos ejecutar Windows en un contenedor en Docker con la misma facilidad que en un contenedor basado en Linux, pero ¿cómo? Dado que Microsoft es un jugador bastante reciente en el mercado de contenedores, el concepto de Docker y contenedores probablemente sea nuevo para muchas tiendas de Microsoft. La mejor forma de aprender sobre algo es haciéndolo, así que hagámoslo.
Para este artículo, vamos a comenzar con un host de Windows Server 2016, ya que esta es la versión más antigua de Windows en la que puede ejecutar un verdadero host de Docker.
Descargar e instalar el paquete y el módulo Docker
En su Windows Server 2016, diríjase a la Galería de PowerShell y descargue el módulo DockerMsftProvider. Este es el módulo de PowerShell que contiene todos los proveedores de paquetes que le permitirán descargar e instalar las utilidades de Docker a través de PowerShellGet Install-Package
comando.
PS> Install-PackageProvider -Name NuGet -MinimumVersion 2.8.5.201 -Force
PS> Install-Module -Name DockerMsftProvider -Force
Una vez que haya instalado el proveedor, ahora es el momento de darle un buen uso instalando la página de Docker desde él.
PS> Install-Package -Name docker -ProviderName DockerMsftProvider -Force
WARNING: A restart is required to enable the containers feature. Please restart your machine.
Name Version Source Summary
---- ------- ------ -------
Docker 17.06.2-ee-6 DockerDefault Contains Docker EE for use with Windows Server.
Encabezaremos la advertencia que nos dice el instalador del paquete y luego reiniciaremos nuestro host de Windows Server con Restart-Computer -Force
.
Una vez que el servidor vuelva a estar en línea, verifique si el demonio de la ventana acoplable funciona correctamente al verificar la versión. Si obtiene una sección de cliente y otra de servidor con información de versión para cada uno, ¡está listo!
PS> docker version
Client:
Version: 17.06.2-ee-6
API version: 1.30
Go version: go1.8.3
Git commit: e75fdb8
Built: Mon Nov 27 22:46:09 2017
OS/Arch: windows/amd64
Server:
Version: 17.06.2-ee-6
API version: 1.30 (minimum version 1.24)
Go version: go1.8.3
Git commit: e75fdb8
Built: Mon Nov 27 22:55:16 2017
OS/Arch: windows/amd64
Experimental: false
Descarga de la imagen base
Luego viene la parte en la que necesita una imagen base de contenedor. La forma más fácil de obtener una imagen en su servidor es a través de Docker Hub. Para obtener una imagen de Docker Hub, puede usar pull
parámetro en la utilidad docker.
Relacionado:Cómo crear una imagen de Docker Windows con Docker Build
Por ahora, sacaré una copia nueva de Windows Server Core. Una vez iniciado, verá el progreso de la descarga de cada imagen en el repositorio definido.
PS> docker pull microsoft/windowsservercore
Using default tag: latest
latest: Pulling from microsoft/windowsservercore
3889bb8d808b: Downloading [========================> ] 2.019GB/4.07GB
cfb27c9ba25f: Download complete
Una vez que se haya descargado la imagen para Windows, el motor de Docker extraerá cada imagen de su estado comprimido. Desafortunadamente, para las imágenes de Windows Server, esto puede llevar un poco de tiempo. Pero una vez que se hayan extraído las imágenes, habrá creado su primer contenedor de Windows Server con Docker.
Ejecución de comandos en el contenedor Docker Windows Server
La pieza final solo para confirmar que el contenedor está intacto y funcionando es enviarle un comando de ejecución usando docker run
. docker run
es un comando que envía un comando no interactivo al contenedor. Es esencialmente como abrir cmd
y ejecutar comandos de esa manera.
Cualquier comando funcionará, así que veremos si podemos devolver el nombre de host del contenedor usando hostname
comando.
PS> docker run microsoft/windowsservercore
hostname69c7de26ea48
Si devuelve cualquier cosa menos un error, ¡ya está! Ahora tiene una configuración de host de Windows Server 2016 con el servicio Docker ejecutándose capaz de extraer y enviar imágenes de Docker hacia/desde Docker Hub y ejecutar la cantidad de contenedores que desee.