Vamos a ver de una forma práctica como podríamos manejar un entorno con Docker. La primera tarea que debemos realizar es instalar Docker, aunque hoy día hay muchos proveedores de servicios en la nube que nos ofrecen ya una plantilla de una máquina virtual con Docker preinstalado, no obstante en la mayoría de los casos no suele estar instalada la última versión.
La instalación habitualmente nos instala tanto el demonio o servicio Docker como un cliente Docker. Como se ha comentado anteriormente, el demonio Docker sólo funciona en un entorno Linux, aunque actualmente hay una versión beta para Windows Server, con lo que a la hora de instalarlo en Windows o Mac nos crea una máquina virtual Linux con el demonio Docker preinstalado.
Actualmente, el equipo de Docker recomienda desplegar Docker en Ubuntu, Debian o productos de la familia Red Hat (CentOS, Fedora, etc) y pone a nuestra disposición paquetes que podemos usar para instalar.
Los requerimientos para poder instalar Docker:
- Arquitectura de 64-bit (actualmente x86_64 y amd64). Las plataformas de 32-bit no están actualmente soportadas.
- Estar ejecutando un Linux con kernel 3.8 o posterior. Algunos kernels a partir de la versión 2.6.x y posteriores podrían ejecutar Docker correctamente, pero los resultados pueden variar, oficialmente no está soportado.
El servicio Docker escuchará por defecto en un Unix socket en /var/run/docker.sock para requerimientos entrantes, pero se puede cambiar la forma que escucha Docker con el flag –H cuando el servicio se está ejecutando, por ejemplo, para que escuche por todas las redes:
$ docker daemon –H tcp://0.0.0.0:2375
Para el desarrollo de este TFG se han realizado pruebas e instalaciones en 3 entornos, que si bien son diferentes a la hora de instalar, no lo serán tanto a la hora de ejecutar y manejar contenedores.
Instalación en la nube
Para esta prueba se ha optado por el proveedor Atlantic y se ha creado una máquina virtual, eligiendo la plantilla de una máquina con sistema operativo Ubuntu y Docker preinstalado. Como podemos ver en la figura 5, dentro las opciones de lanzamiento de una máquina virtual, además de elegir el lugar físico y el sistema operativo, nos permite elegir si queremos que tenga Docker preinstalado.
Dado que la versión de Docker que venía no estaba actualizada, se han tenido que actualizar los repositorios de Ubuntu según indica en la web oficial de Docker para poder utilizar la versión actual de Docker.
En la actualidad, muchos proveedores nos ofrecen Docker preinstalado además del utilizado en este caso, como Amazon EC2, Rackspace Cloud y Google Compute Engine.
instalación en un mac os x
Para esta prueba se ha utilizado un MacBook Air con sistema operativo “OS X El Capitan”. Para instalar Docker según indica en su web oficial se ha utilizado la herramienta Docker Toolbox, la cual incluye las siguientes herramientas de Docker:
- Docker Machine
- Docker Engine
- Docker Compose
- Kitematic
- Un Shell ya configurado para poder utilizar Docker desde la línea de comandos
- Una máquina virtual de Oracle VirtualBox
Al instalarlo, nos crea un icono denominado “Docker Quickstart Terminal.app”, que nos permite acceder al Shell configurado.
Aquí podemos ver el Shell en ejecución, el cual nos muestra la ip de la máquina virtual que corre el demonio Docker.
Puesto que realmente el demonio Docker está virtualizado, la dirección ip será la del servidor que contiene el demonio, así pues, si por ejemplo levantamos un contenedor en el puerto 8000 con un servidor web, tendremos que utilizar el formato “http:// ip de la maquina:8000”, mientras que si fuera un servidor Linux hubiéramos podido apuntar directamente a “http://localhost:8000”
Instalación en una máquina linux
Para esta prueba se ha instalado la distribución OpenSuse Leap 42.1
Hay unos pre-requisitos que son requeridos para instalar y ejecutar en un Linux hosts.
Lo primero debemos confirmar que contamos un kernel lo suficientemente reciente, se puede comprobar usando el comando “uname”.
$ uname -a
Siempre debemos asegurarnos que tenemos un kernel 3.8 o posterior.
La instalación en nuestro caso que tenemos OpenSuse es bastante sencilla, gracias a que va incorporada en el gestor de paquetes del sistema, lo mismo ocurre en otras distribuciones Linux muy conocidas, como Ubuntu.
A partir de ahora vamos a suponer que estamos utilizando el usuario root, en caso contrario, debemos anteponer “sudo” a cada instrucción, pues se requieren permisos de root para la instalación, en nuestro caso, instalamos los paquetes de Docker:
$ zypper in Docker
Luego arrancamos el servicio o demonio Docker
$ systemctl start Docker
Y ya esta instalado, podemos comprobar que todo funciona correctamente lanzando un contenedor básico llamado hello-world
$ docker run hello-world
Por último sería conveniente configurar que Docker se inicie al arrancar la máquina:
$ systemctl enable docker
No hay comentarios:
Publicar un comentario