Ejecute contenedores Docker en Windows Server 2019
En este tutorial, veremos cómo puede configurar su servidor Windows 2019 para ejecutar contenedores Docker. Docker ha cambiado las reglas del juego en la contenedorización de aplicaciones y en todos los patrones de diseño e implementación de microservicios. Docker facilita la creación, envío y ejecución de imágenes que contienen aplicaciones con sus dependencias y evita los locos problemas de dependencia comunes con el uso de máquinas virtuales.
El motor Docker es lo que impulsa los contenedores Docker. Fue escrito originalmente para Linux, pero se ha trabajado mucho para permitir a los usuarios de Windows y macOS ejecutar contenedores Docker.
Un requisito previo es la instalación de un servidor Windows. Esto puede ser en una máquina virtual que se ejecuta localmente, una implementación de servidor físico o una instancia en la nube que se ejecuta en Azure. Puede consultar nuestra guía de instalación a continuación.
- Cómo instalar Windows Server 2019 paso a paso
Cómo ejecutar contenedores Docker en Windows Server 2019
Antes de poder usar los contenedores de Windows para ejecutar múltiples aplicaciones aisladas en su sistema, deberá habilitar la función de contenedores e instalar Docker en Windows Server 2019.
Paso 1: habilite la función de contenedores en Windows Server 2019
El primer paso es habilitar la función de contenedores de Windows Server 2019. Abra PowerShell como administrador.
Ejecute los siguientes comandos.
Install-Module -Name DockerMsftProvider -Repository PSGallery -ForceEsto instalará el proveedor de administración de paquetes Docker-Microsoft desde la galería PowerShell.
El resultado de muestra es el que se muestra a continuación:
Paso 2: instale Docker en Windows Server 2019
Una vez que la función Contenedores esté habilitada en Windows Server 2019, instale el último Docker Engine y Client ejecutando el siguiente comando en su sesión de PowerShell.
Install-Package -Name docker -ProviderName DockerMsftProviderAcepte la instalación usando "Sí", "Y" o "A" para aceptar todo.
Cuando se complete la instalación, reinicie la computadora.
Restart-Computer -ForceLa versión de Docker instalada se puede verificar con:
Administrator> Get-Package -Name Docker -ProviderName DockerMsftProvider
Name Version Source ProviderName
---- ------- ------ ------------
docker 18.09.2 DockerDefault DockerMsftProvider
Lo mismo se puede lograr con el comando docker --version.
PS C:\Users\Administrator> docker version
Client:
Version: 18.09.2
API version: 1.39
Go version: go1.10.6
Git commit: 1ac774dfdd
Built: unknown-buildtime
OS/Arch: windows/amd64
Experimental: false
error during connect: Get http://%2F%2F.%2Fpipe%2Fdocker_engine/v1.39/version: open //./pipe/docker_engine: The system cannot find the file specified. In the default daemon configuration on Windows, the docker client must be run elevated to connect. This error may also indicate that the docker daemon is not running.La actualización se puede realizar en cualquier momento ejecutando los siguientes comandos en PowerShell.
Install-Package -Name Docker -ProviderName DockerMsftProvider -Update -Force
Start-Service DockerPaso 3: ejecutar el contenedor Docker
Iniciar el demonio Docker
Start-Service DockerDespués de iniciar el servicio Docker Engine, descargue la imagen de muestra .NET creada previamente desde el registro de Docker Hub:
docker pull mcr.microsoft.com/dotnet/samples:dotnetapp-nanoserver-2009Puede recuperar una lista de todas las etiquetas disponibles para dotnet/samples en https://mcr.microsoft.com/v2/dotnet/samples/tags/list
Luego implemente un contenedor simple que ejecute una aplicación .Net Hello World.
docker run mcr.microsoft.com/dotnet/samples:dotnetapp-nanoserver-2009El contenedor se iniciará, imprimirá el mensaje de hola mundo y luego saldrá.
Ejecución de contenedores de Linux en Windows Server 2019
De fábrica, Docker en Windows solo ejecuta el contenedor de Windows. Para usar contenedores de Linux en Windows Server, debe usar Docker Enterprise Edition Preview, que incluye un sistema LinuxKit completo para ejecutar contenedores Docker Linux.
Desinstale su Docker CE actual.
Uninstall-Package -Name docker -ProviderName DockerMSFTProviderHabilite la virtualización anidada si está ejecutando contenedores Docker utilizando una máquina virtual Linux que se ejecuta en Hyper-V.
Get-VM WinContainerHost | Set-VMProcessor -ExposeVirtualizationExtensions $true
Luego instale la versión preliminar actual de Docker EE.
Install-Module DockerProvider
Install-Package Docker -ProviderName DockerProvider -RequiredVersion previewHabilite el sistema LinuxKit para ejecutar contenedores de Linux
[Environment]::SetEnvironmentVariable("LCOW_SUPPORTED", "1", "Machine")Reinicie el servicio Docker después del cambio.
Restart-Service dockerExtraiga una imagen acoplable de prueba.
> docker run -it --rm ubuntu /bin/bash
root@1440a7fef7e0:/# cat /etc/os-release
NAME="Ubuntu"
VERSION="18.04.1 LTS (Bionic Beaver)"
ID=ubuntu
ID_LIKE=debian
PRETTY_NAME="Ubuntu 18.04.1 LTS"
VERSION_ID="18.04"
HOME_URL="https://www.ubuntu.com/"
SUPPORT_URL="https://help.ubuntu.com/"
BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/"
PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy"
VERSION_CODENAME=bionic
UBUNTU_CODENAME=bionic
root@1440a7fef7e0:/# exit
exitPara volver a ejecutar contenedores de Windows, ejecute:
[Environment]::SetEnvironmentVariable("LCOW_SUPPORTED", "$null", "Machine")Disfrute ejecutando contenedores de Linux y Windows en Windows Server 2019. Envíenos un comentario en caso de cualquier problema.
Libros para aprender a administrar Kubernetes:
- Los mejores libros de estudio de Kubernetes
Consulte también:
- Cómo instalar aplicaciones desde la línea de comandos de Windows
- Cómo permitir la respuesta de eco ICMP en Windows Server 2019
- Cómo habilitar el Protocolo de escritorio remoto (RDP) en Windows Server 2019
- Cómo ejecutar Linux en Windows Server 2019 con WSL


