informatica:sistemas_operativos:cursos:docker_avanzado
Diferencias
Muestra las diferencias entre dos versiones de la página.
| Ambos lados, revisión anteriorRevisión previaPróxima revisión | Revisión previa | ||
| informatica:sistemas_operativos:cursos:docker_avanzado [2023/10/09 20:18] – [Eliminar un contenedor] tempwin | informatica:sistemas_operativos:cursos:docker_avanzado [2023/10/19 18:42] (actual) – [Recursos] tempwin | ||
|---|---|---|---|
| Línea 12: | Línea 12: | ||
| soluciones basadas en contenedores desde el punto de vista de la seguridad y la escalabilidad | soluciones basadas en contenedores desde el punto de vista de la seguridad y la escalabilidad | ||
| - | ===== Temario ===== | + | ===== Temario |
| * 1. [[informatica: | * 1. [[informatica: | ||
| Línea 34: | Línea 34: | ||
| * Auditoría de la plataforma Docker | * Auditoría de la plataforma Docker | ||
| + | ===== Temario real ===== | ||
| + | |||
| + | * Módulo 1: [[informatica: | ||
| + | * Módulo 2: [[informatica: | ||
| + | * Módulo 3: [[informatica: | ||
| + | * Módulo 4: [[informatica: | ||
| + | * Módulo 5: [[informatica: | ||
| + | * Módulo 6: [[informatica: | ||
| + | * Módulo 7: [[informatica: | ||
| + | * Módulo 8: [[informatica: | ||
| + | * Módulo 9: [[informatica: | ||
| + | * Módulo 10: [[informatica: | ||
| + | * Módulo 11: [[informatica: | ||
| + | |||
| + | * [[informatica: | ||
| + | * [[informatica: | ||
| ===== Notas ===== | ===== Notas ===== | ||
| Profesores: | Profesores: | ||
| - | * Antonio Varela (está certificado en Docker) | + | * Antonio Varela |
| * ESTEBAN VAZQUEZ FERREIRO | * ESTEBAN VAZQUEZ FERREIRO | ||
| Línea 198: | Línea 214: | ||
| * En la actualidad los principales actores cloud ofrecen completísimas opciones de despliegue de contenedores en sus infraestructuras (Amazon Web Services, Microsoft Azure, Google Compute Engine) | * En la actualidad los principales actores cloud ofrecen completísimas opciones de despliegue de contenedores en sus infraestructuras (Amazon Web Services, Microsoft Azure, Google Compute Engine) | ||
| * Todos ellos soportan Kubernetes para permitir despliegues más complejos de múltiples contenedores orquestados para trabajar y escalar de forma independiente. | * Todos ellos soportan Kubernetes para permitir despliegues más complejos de múltiples contenedores orquestados para trabajar y escalar de forma independiente. | ||
| + | |||
| + | |||
| + | <WRAP center round info 60%> | ||
| + | Podman, Buildah y skopeo es la alternativa que ofrece Red Hat a Docker containers. Docker y Podman respetan el estándar [[https:// | ||
| + | </ | ||
| ===== Instalación ===== | ===== Instalación ===== | ||
| Línea 377: | Línea 398: | ||
| <WRAP center round info 60%> | <WRAP center round info 60%> | ||
| - | Como las imágenes, los contenedores también nombres / identificadores únicos. | + | Como las imágenes, los contenedores también |
| </ | </ | ||
| + | Podemos darle un nombre al contenedor que queremos crear con la opción '' | ||
| + | < | ||
| + | docker run --name mi-contenedor -it ubuntu /bin/bash | ||
| + | </ | ||
| + | |||
| + | De esta manera, si volvemos a ejecutar el comando, no nos dejará porque no podemos tener dos contenedores con el mismo nombre. Recordemos que tanto el nombre como el ID identifica un contenedor. | ||
| + | |||
| + | Crear un contenedor en modo " | ||
| + | < | ||
| + | docker run --name mydaemon -d ubuntu /bin/sh -c "while true; do echo hello world; sleep 1; done" | ||
| + | </ | ||
| + | |||
| + | Miramos que esté en ejecución el contenedor anterior: | ||
| + | |||
| + | < | ||
| + | docker ps | ||
| + | </ | ||
| + | |||
| + | Podemos ver la salida del contenedor: | ||
| + | |||
| + | < | ||
| + | docker logs mydaemon | ||
| + | </ | ||
| + | |||
| + | Para ver en tiempo real la salida: | ||
| + | |||
| + | < | ||
| + | docker logs -ft 10 mydaemon | ||
| + | </ | ||
| + | |||
| + | Para ver la lista de procesos dentro del contendor (sin tener que entrar en él): | ||
| + | |||
| + | < | ||
| + | docker top mydaemon | ||
| + | </ | ||
| + | |||
| + | ==== docker inspect ==== | ||
| + | |||
| + | Comando que da información extendida sobre un contenedor. | ||
| + | |||
| + | < | ||
| + | docker inspect mi-contenedor | ||
| + | </ | ||
| + | |||
| + | Ejemplo de salida: | ||
| + | |||
| + | < | ||
| + | [ | ||
| + | { | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | "while true; do echo hello world; sleep 1; done" | ||
| + | ], | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | }, | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | }, | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | }, | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | 36, | ||
| + | 188 | ||
| + | ], | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | "/ | ||
| + | "/ | ||
| + | "/ | ||
| + | "/ | ||
| + | "/ | ||
| + | "/ | ||
| + | "/ | ||
| + | "/ | ||
| + | "/ | ||
| + | "/ | ||
| + | ], | ||
| + | " | ||
| + | "/ | ||
| + | "/ | ||
| + | "/ | ||
| + | "/ | ||
| + | "/ | ||
| + | ] | ||
| + | }, | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | }, | ||
| + | " | ||
| + | }, | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | ], | ||
| + | " | ||
| + | "/ | ||
| + | " | ||
| + | "while true; do echo hello world; sleep 1; done" | ||
| + | ], | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | } | ||
| + | }, | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | } | ||
| + | } | ||
| + | } | ||
| + | } | ||
| + | ] | ||
| + | </ | ||
| + | |||
| + | Para coger una parte de esa salida, por ejemplo, la dirección IP del contenedor: | ||
| + | |||
| + | < | ||
| + | docker inspect -f=' | ||
| + | </ | ||
| + | |||
| + | La sintaxis es [[https:// | ||
| ==== Busybox ==== | ==== Busybox ==== | ||
| Línea 533: | Línea 812: | ||
| + | ===== Recursos ===== | ||
| + | |||
| + | * https:// | ||
| + | * https:// | ||
| + | * [[https:// | ||
| + | * [[https:// | ||
informatica/sistemas_operativos/cursos/docker_avanzado.1696875533.txt.gz · Última modificación: por tempwin
