Utilizar Docker en Azure
Docker en Azure
En este post vamos a ver como utilizar docker en Azure para poder gestionar nuestros containers, así como también crear imágenes propias (próximo post) y hacer uso de ellas posteriormente.
Como requisito para empezar a trabajar es necesario contar un un host de Docker en Azure. Para ello, luego de haber ingresado al portal de Azure, vamos a New y buscamos docker. Como resultados vamos a tener una opción Docker on Ubuntu Server (que nos genera una instancia de Ubuntu 16.04 LTS con Docker ya instalado).
Luego de seleccionar vamos a pulsar el botón Create. A partir de este momento debemos completar el asistente de implementación con los siguientes datos:
- Hostname
- Username/Password
- Pricing tier
- Resource Group
- Location
Culminado el proceso, vamos a acceder a la VM y publicar 2 puertos para poder utilizarlos posteriormente (80 y 443). Este requerimiento lo realizamos accediendo a los endpoints de la VM, como indica la siguiente imagen:
Y completamos los campos con los siguientes datos en orden:
- HTTP / 80 /80
- HTTPS / 443 / 443
Conexión con el host de Docker
Lo primero que vamos a hacer es conectarnos a nuestro host de Docker en Azure. Para ello vamos a abrir una consola de PowerShell y posteriormente ejecutar lo siguiente:
Fácil, no? Bueno, en realidad con lo anterior solamente accedimos a nuestra consola de bash en Windows para poder utilizar el cliente ssh que trae incluido. En caso de que no tengan habilitada la feature de Bash on Ubuntu on Windows, les dejo un post anterior para que sepan como habilitarlo: Habilitar Bash en Windows
Para conectarnos por ssh desde nuestra consola basta ejecutar:
Nos aparecerá una advertencia indicando que no se conoce al host y si realmente queremos conectarnos, al escribir yes automáticamente se agrega el host como conocido. A partir de estos momentos estamos conectados a nuestro host de Docker en Azure.
Docker
Para comenzar a trabajar con Docker vamos a ver como hacemos para conocer los containers que se encuentran en ejecución en nuestro host, con el comando ps, de la siguiente manera:
Y para tener una lista de las imágenes que disponemos en el host, el comando es images:
Es obvio que el resultado de ambos comandos es en blanco, ya nos encontramos sobre una instalación limpia. Así que vamos a comenzar a creando un container para comprobar el funcionamiento correcto de la plataforma y de los endpoints que configuramos.
En cuestión, vamos a hacer el “ Hola mundo!” de los containers:
Ok, parece que solo imprimimos un mensaje en pantalla, pero realmente se realizó la descarga de la imagen ubuntu y se generó un container a partir de esa imagen, al que se le especificó que imprimiera un msje en particular. ¿Cómo podemos comprobar que se descargó la imagen en cuestión? De la siguiente manera:
Como muestra la imagen anterior vemos que existe una imagen en nuestro store local y a su vez, tenemos un container corriendo en nuestro host.
Descargar una imagen en particular
En caso de conocer la imagen que pretendemos utilizar en el host, existe el comando pull que nos permite realizar esta tarea:
Que nos permite descargar según el ejemplo la imagen oficial de Jekyll (generador estático para blogs).
Happy scripting!
Comments