Docker: Instalando docker en Windows 3


Introducción

Docker está revolucionando el mundo del cloud computing y la virtualización. Se trata de un proyecto que automatiza la puesta en marcha de aplicaciones dentro de contenedores de software a través de una capa adicional de abstracción y automatización de la virtualización a nivel de sistema operativo en Linux.

Todo esto permite separar la aplicación de la infraestructura subyacente de aplicaciones y servidores (Sistema operativo, Bases de datos, servidores de aplicaciones…) y centrarse únicamente en su desarrollo y puesta en marcha. De este modo, podemos reproducir exactamente las mismas condiciones en cuanto a arquitectura en el entorno de desarrollo y en el entorno productivo lo que ademas de facilitar el desarrollo y testeo de la aplicación, nos evitará futuros bugs y defectos relacionados con las mismas.

En la siguiente serie de tutoriales mostraremos cómo instalar docker en windows para emplearlo como herramienta de apoyo al desarrollo de aplicaciones, acelarando el ritmo de desarrollo para distintas plataformas y previniendo los posibles problemas al pasar nuestras aplicaciones al entorno de producción.

Arquitectura

Arquitectura de Docker

Sin entrar en muchos detalles acerca de imágenes, directorios, contenedores, volúmenes, etc. vamos a tratar de sintetizar un poco como se fundamenta la arquitectura de docker.

En una primera capa encontramos el sistema operativo, aquí es dónde se ejecuta el componente principal de Docker, el demonio o proceso principal (Docker Daemon). El sistema operativo debe de estar basado en el Kernel de Linux 3.10 como mínimo. Es por ello que si vamos a trabajar con Docker desde windows, necesitaremos una máquina virtual dónde ejecutar este sistema operativo, pero eso lo veremos más adelante.

En una siguiente capa encontramos las imágenes. Éstas son plantillas de solo lectura que pueden contener el sistema operativo, el servidor de aplicaciones, etc. Una imagen puede basarse en otra imagen y añadir un componente más, de esta forma, las imágenes se van apilando hasta conseguir los componentes necesarios. Hay un directorio público que contiene infinidad de imágenes, con lo que es posible que alguien ya haya creado una imagen que necesitemos.

Finalmente, en la última capa encontramos el contenedor. Aquí se agrupa todo lo necesario para que pueda ejecutarse la aplicación. Cada contenedor se crea a partir de una imagen. Cada contenedor es un entorno aislado y seguro dónde ejecutar la aplicación, por lo que en general se recomienda ejecutar cada proceso en un contenedor distinto.

Instalando en Windows

Tal como hemos visto, el componente principal de Docker requiere un sistema operativo Linux para poderse ejecutar. Para ello encontramos otro de los componentes principales de Docker, Docker Machine, que permite crear servidores Docker en máquinas virtuales. Con ello, se permite poder tener servidores Docker en una máquina local o en un servidor en la nube (Amazon Web Services, Microsoft Azure, Openstack…)

Para el caso de Windows, Docker Machine creará una máquina virtual empleando Virtual Box.

Docker Toolbox

La instalación en Windows se ha simplificado bastante, ya que Docker nos proporciona el paquete Docker Toolbox que incluye todo lo necesario para crear un servidor Docker, entre otras cosas Virtual Box, Docker-Machine y Docker Engine. Los componentes se pueden instalar de forma opcional, por ejemplo, es posible que ya contemos con una versión actualizada de Virtual Box en nuestro sistema, por lo que no será necesario instalarlo.

El primer paso será por tanto descargar e instalar Docker Toolbox.

Descargar Docker Toolbox para Windows Instalar Docker Toolbox en Windows

A partir de aquí seguiremos las instrucciones del wizard para instalar los componentes necesarios.

Docker Machine

Una vez se haya instalado Docker Toolbox, ya dispondremos de docker-machine en nuestro sistema y podremos crear nuestra primera máquina virtual servidor de docker engine.

Docker machine requiere acceso a las herramientas que nos proporciona Git (entre ellas ssh.exe), por lo que si no lo tenemos en el path de windows, deberemos de añadirlo. Para ello, presionamos en el teclado la tecla de windows y pausa para abrir la información del sistema. Desde aquí presionamos sobre el enlace Configuración avanzada del sistema.
Variables de entorno en WindowsEn la pestaña avanzado, pinchamos sobre variables de entorno.

Variable de entorno Path

En las variables del sistema, editamos la variable Path.

Añadir Git a variable PATH

Añadimos el directorio donde se encuentra git, en nuestro caso “C:\Program Files\Git\bin\”.

Ya podemos crear nuestra primera máquina. Para ello ejecutamos el siguiente comando

En este caso estamos pidiendo crear una máquina empleando el driver de VirtualBox que se llame “dev”. Con ello, docker-machine creará automáticamente una máquina linux con docker-engine totalmente configurada y lista para ser usada. Si abrimos el panel de control de VirtualBox podremos comprobarlo.

VirtualBox mostrando máquina Docker

En cualquier momento podemos usar el comando:

para listar las máquinas que tenemos en el sistema y su estado.

Listado de Docker Machine

La máquina se inicia automáticamente cuando se crea. En cualquier caso, para iniciarla si se encuentra apagada (como en la captura anterior), emplearemos el siguiente comando:

dónde “dev” es el nombre que le hemos dado a la máquina en el primer paso.

Cada vez que queramos trabajar con esta máquina virtual, deberemos de crear las variables de entorno en la consola. Para ello usamos el siguiente comando:

Para facilitar todas estas tareas es conveniente recoger estos comandos en ficheros bat, que automaticen las tareas. Si queremos incluir la instrucción anterior en un .bat, hay que recordar poner dos signos % en lugar de uno:

Finalmente, para apagar la máquina empleamos el siguiente comando:

Con todo ello damos por finalizada la instalación. En el siguiente tutorial veremos como crear una imagen desde otra y nuestro primer servicio containerizado.

Sigue leyendo:

 

Tweet about this on TwitterShare on FacebookShare on LinkedInShare on Google+Pin on PinterestEmail this to someone

Dejar un comentario

Tu dirección de correo electrónico no será publicada. Los campos necesarios están marcados *

3 ideas sobre “Docker: Instalando docker en Windows