CONTENIDO
MODULO 1: CONCEPTOS BÁSICOS DE DOCKER
Conceptos fundamentales de Docker. Instalación y puesta en marcha.
Gestión de imágenes y contenedores
Mapeado de puertos
Creación de imágenes propias. Capas, variables, volúmenes, bind mounts, etiquetas, repositorios…
MODULO 2: ESCENARIOS MULTI-CONTENEDOR
Docker Componer
Configuración mediante variables de entorno y mediante bind mounts
Gestión de entornos con compose
Docker Compose en escenarios multi-contenedor
Acceso externo a contenedores. Redes internas
Creación y administración de redes en Docker
Sesiones interactivas
Escalado de instancias
Gestión remota de contenedores
MODULO 3: ESCENARIOS AVANZADOS CON DOCKER
Uso de Docker y Compose para compilar y para trabajo de desarrollo, incluyendo multi-stage builds y contextos.
Docker en Docker
Contenedores en Windows. WSl. Ejecución de aplicaciones .NET “tradicionales”, .NET Core, SQL Server…
Depuración de contenedores
MODULO 4: CONTENEDORES EN LA NUBE
Desplegar Docker en Azure: en Webapps y en Azure Container Instances
Desplegar Docker en AWS
Desplegar contenedores en Google Computing Engine (GCE)
MODULO 5: ORQUESTADORES: KUBERNETES
Orquestadores más comunes
Kubernetes en local: Minikube, MicroK8s, K3os.
Kubernetes: Servicios. Pods. Escalado de pods.
Despliegues declarativos en Kubernetes.
Aplicaciones multi-contenedor en Kubernetes
Servicios, taints, tolerancias
Kubernetes: Controladores y jobs, StatefulSet y DaemonSet
Kubernetes: Despliegue sin interrupciones de servicios
Kubernetes: Volúmenes, temporales, persistentes, diferentes tipos
Métricas en Kubernetes (metrics-server, heapster, Prometheus, Grafana)
Autoescalado de pods
Asignación de pods a nodos
Seguridad con RBAC (conceptos fundamentales, crear usuarios, crear service accounts, tipos de roles por defecto...)
La API de Kubernetes (versionamiento, acceso con kubectl, custom resource definitions, librerías...)
Clústeres de Kubernetes en Azure
Clústeres de Kubernetes en Google Cloud Engine
Configuración mediante ConfigMaps
Secretos en Kubernetes
Ingreso
Soporte de HTTPS de Ingress, healthchecks, dependencias entre servicios, liveness/readyness, probes
Controladores y jobs en Kubernetes
Uso de Helm para simplificar la instalación de componentes en Kubernetes (incluye Helm 2 y Helm 3)
Kustomize
Ecosistema de Kubernetes (cert-manager, Prometheus, Grafana)
Uso de Kubernetes con Docker Desktop
Entornos de desarrollo y Docker: integración con Visual Studio y con IntelliJ Idea.
DOCKERS Y KUBERNETES
Esta formación te lleva de la mano para que aprendas a dominar Docker y todas las herramientas relacionadas. Desde los conceptos básicos y primeros pasos, hasta el despliegue y orquestación en producción con Kubernetes de los contenedores. Tanto en local como en los principales servicios Cloud (Amazon AWS, Google Cloud GCE, Microsoft Azure). También estudiarás el uso de contenedores en Windows con aplicaciones tradicionales o .NET Core, y el uso de Docker para crear entornos de desarrollo.
Pero los contenedores por sí solos no son suficientes. Para desplegar aplicaciones de manera escalable y masiva se necesita un orquestador. Kubernetes es el estándar de facto en orquestación de contenedores. Esto significa que se encarga automáticamente de desplegar los contenedores, en una máquina local o en la nube, comunicando nodos entre sí, escalando automáticamente, monitorizando, tomando decisiones, vigilando la seguridad, gestionando los posibles problemas, etc.