De la virtualización a Docker
- Los diferentes tipos de virtualización.
- Contenedorización: LXC, espacios de nombres, grupos de control.
- El posicionamiento de Docker.
- Docker frente a la virtualización.
Presentación de Docker
- La arquitectura de Docker.
- Disponibilidad e instalación de Docker en diferentes plataformas (Windows, Mac y Linux).
- Creación de una máquina virtual para una maqueta.
- Línea de comandos y entorno.
Trabajo práctico
Crear una máquina virtual para realizar una maqueta.
Implementación de la línea de comandos
- Preparación de un primer contenedor.
- El Docker hub: recursos centralizados.
- Agrupación de almacenamiento entre contenedores
- Agrupación de puertos TCP entre contenedores.
- Publicación de puertos de red.
- Modo interactivo.
Trabajo práctico
Configurar un contenedor desde la línea de comandos.
Creación de contenedor personalizado
- Generar la imagen de estado de un contenedor.
- ¿Qué es un archivo Dockerfile?
- Automatizar la creación de una imagen.
- Instalar un contenedor.
- Contenedor que alberga varios servicios: supervisor.
Trabajo práctico
Crear un contenedor personalizado.
Poner en marcha una aplicación multicontenedor
- Uso de Docker Compose.
- Crear un archivo de configuración YAML.
- Desplegar varios contenedores simultáneamente.
- Vincular todos los contenedores de la aplicación.
Trabajo práctico
Implementar una aplicación multicontenedor.
Interfaces de administración
- La API de Docker y los servicios web.
- Interfaz de administración basada en la web.
- Alojar su propio registro: Docker Registry, Gitlab-CE...
Trabajo práctico
Construir y utilizar su propio registro.
Administrar contenedores en producción
- Automatizar el inicio de los contenedores en el arranque.
- Gestionar los recursos asignados a los contenedores.
- Gestión de los registros de los contenedores.
- Copias de seguridad: ¿qué herramientas y estrategia?
Trabajo práctico
Administración de los contenedores.
Orquestación y clusterización
- Presentación de Docker Desktop.
- El orquestador Swarm: nodos, servicios, secretos, configuraciones.
- Despliegue de servicios y pilas en un Swarm.
- Proxy inverso y equilibrador de carga para servicios web en clúster (Traefik...).
Trabajo práctico
Creación de un clúster Swarm. Gestión de los nodos del clúster. Publicación y puesta a escala de un servicio en el clúster.