Docker workshop
Docker workshop
Óscar García Amor
https://ogarcia.me/
¿Qué es Docker?
Docker workshop
Óscar García Amor
https://ogarcia.me/
Docker es una plataforma que permite empaquetar software en unidades estandarizadas llamadas contenedores que incluyen todo lo necesario para que dicho software se ejecute, incluidas bibliotecas, herramientas de sistema, código y tiempo de ejecución.
Un poco de historia
Docker workshop
Óscar García Amor
https://ogarcia.me/
- Nace en 2011 de la mano de Solomon Hykes como proyecto interno de dotCloud con las contribuciones iniciales de otros ingenieros como Andrea Luzzardi, Francois-Xavier Bourlet o Jeff Lindsay.
- En marzo de 2013 se libera como proyecto de código abierto.
- En octubre de 2013 dotCloud Inc. se transforma en Docker Inc.
- En 2014 se lanza la versión 0.9 donde deja de utilizar LXC como el entorno de ejecución por defecto reemplazándolo con su propia biblioteca, libcontainer, escrito en Go.
- Se libera la versión 1.0 en junio de 2014.
Algo mas de historia
Docker workshop
Óscar García Amor
https://ogarcia.me/
- En octubre de 2014 Microsoft anuncia la integración del motor y soporte nativo para el rol de cliente en Windows.
- En abril de 2015 el proyecto tenía más de 20.700 estrellas de GitHub (en el top 20), más de 4.700 forks, y casi 900 colaboradores.
- En junio de 2015 se funda la Open Container Initiative con el patrocinio de la Linux Foundation.
- En noviembre de 2017 se publica la version 17.11 que cambia el motor a containerd.
- En noviembre de 2018, con la versión 18.09 el demonio del motor de docker deja de manejar containerd para ser reemplazado por systemd.
Arquitectura
Docker workshop
Óscar García Amor
https://ogarcia.me/
Docker utiliza una arquitectura cliente-servidor donde el cliente de docker se comunica con el demonio de docker a través de una API REST, un socket UNIX o usando una interfaz de red.
Composición
- Demonio
- Cliente
- Registro
- Objetos
- Imágenes
- Contenedores
Contenedor vs. Máquina Virtual
Docker workshop
Óscar García Amor
https://ogarcia.me/
Imágenes y Capas
Docker workshop
Óscar García Amor
https://ogarcia.me/
Descargada imagen base del Hub de Docker: alpine:3.14.2 (5,59MB)
14119a10abf4
- Se inicia la imagen base de alpine
- Actualización de paquetes
- Se almacena como nueva capa (2,19MB)
4704ed6a7e21
b7a8cec8ab99
30f85e49976e
- Se inicia la imagen anterior
- Se instala nginx
- Se almacena como nueva capa (1,44MB)
- Se inicia la imagen anterior
- Se cambia la orden de ejecución
- Se almacena como nueva capa (0B)
Ventajas y Mitos
Docker workshop
Óscar García Amor
https://ogarcia.me/
- Es seguro por definición
- Malgasta espacio (ocupa más)
- Es mucho mas lento
- Es un sistema complejo
- Es código abierto
- Ejecuta aplicaciones no máquinas
- Es reutilizable
- Es reproducible
- Aisla recursos
- Esta muuuuy documentado
Ventajas
Mitos
¡Veamos cómo funciona!
Docker workshop
Óscar García Amor
https://ogarcia.me/
¿Preguntas?
Docker workshop
Óscar García Amor
https://ogarcia.me/
¡Gracias!
Docker workshop
Óscar García Amor
https://ogarcia.me/
Docker workshop
By Óscar García Amor
Docker workshop
- 584