Hostear un Web server en un container de Windows Server 2016 TP3

Buenas,

Tras explicar en el siguiente articulo como desplegar un container host corriendo sobre Windows server 2016 TP3. Atendiendo a lo prometido, hoy me gustaría explicar el procedimiento para crear un web server en un container que correrá en este container host.

Para ellos seguiremos los siguientes pasos:

1– Iniciamos sesión en nuestro container host y arrancamos powershell

2– Creamos un container usando la imagen de Windows server core y los iniciamos ejecutando los siguientes comandos de power Shell.

$container = New-Container -Name webbase -ContainerImageName WindowsServerCore -SwitchName «Virtual Switch»
Start-Container $container

3– Instalamos el servicio de webserver nginx en el container ejecutando los siguientes commandos.

wget -uri ‘http://nginx.org/download/nginx-1.9.3.zip’ -OutFile «c:\nginx-1.9.3.zip»
Expand-Archive -Path C:\nginx-1.9.3.zip -DestinationPath c:\ -Force

4– Paramos la ejecución del container y creamos una imagen del mismo la cual desplegaremos a posteriori, para ellos ejecutamos los siguientes comandos.

Stop-Container $container
$webserverimagetest = New-ContainerImage -Container $container -Publisher Demo -Name nginxwindows -Version 1.0

5– Desplegamos e iniciamos un container con el web server incorporado usando la imagen previamente creada, para ellos ejecutaremos los siguientes comandos:

$webservercontainer = New-Container -Name webservertest -ContainerImageName nginxwindows -SwitchName «Virtual Switch»
Start-Container $webservercontainer

6– Iniciamos el web server de nginx ejecutando los siguientes comandos

cd c:\nginx-1.9.3\
start nginx

7– Por ultimo crearemos una regla de firewall para permitir el trafico por el puerto 80 en nuestro container host ejecutando el siguiente comando:

if (!(Get-NetFirewallRule | where {$_.Name -eq «TCP80»})) {
New-NetFirewallRule -Name «TCP80» -DisplayName «HTTP on TCP/80» -Protocol tcp -LocalPort 80 -Action Allow -Enabled True
}

8 – finalmente probamos el acceso a la aplicación web desde un navegador. En el pantallazo adjunto podéis ver el resultado.

Espero que os resulte de utilidad

Un saludo

Samuel López posted at 2015-9-3 Category: Articulos IT