Dominio de Docker en las Praderas de Gelasian

DockerBeginner
Practicar Ahora

Introducción

Imagina que te encuentras en las antiguas praderas de Gelasian, donde los caballos salvajes corren libremente y el vínculo entre un domador y estas bestias indómitas es vital para la supervivencia. Tu papel es el de un domador de caballos salvajes, encargado del desafío de utilizar Docker para gestionar contenedores de manera eficiente en este vasto paisaje.

Dominio de la Creación de Contenedores

En este paso, aprenderás los conceptos fundamentales para crear y gestionar contenedores de Docker, herramientas esenciales para sobrevivir en las praderas salvajes.

Tareas

  • Crea un contenedor de Nginx llamado mynginx y asegúrate de que se esté ejecutando correctamente.
  • Lanza un contenedor de Alpine y verifica su estado.
  • Despliega un contenedor de Ubuntu con un volumen específico vinculado (montando el directorio local ~/project en la ruta /app del contenedor).

Requisitos

  • Debes realizar todas las operaciones dentro del directorio /home/labex/project.
  • Utiliza los siguientes comandos:
    • Para crear contenedores: docker run
    • Para verificar el estado de los contenedores: docker ps
    • Para vincular un volumen: docker run -v

Ejemplo

Tras completar las tareas, la salida de docker ps debería mostrar los contenedores en ejecución, incluyendo información relevante como el ID del contenedor, la imagen y su estado actual.

labex:~/ $ docker ps
CONTAINER ID   IMAGE     COMMAND                  CREATED          STATUS          PORTS     NAMES
1983f85f03d4   ubuntu    "sleep 3600"             22 seconds ago   Up 21 seconds             ubuntu_container
4231996cae33   alpine    "sleep 3600"             2 minutes ago    Up 2 minutes              alpine_container
519eadd3ced5   nginx     "/docker-entrypoint.…"   2 minutes ago    Up 2 minutes    80/tcp    mynginx

Redes de Contenedores y Comunicación

En este paso, te adentrarás en el mundo de las redes de Docker para establecer una conectividad fluida a través de las praderas.

Tareas

  • Crea una red personalizada llamada mynetwork para los contenedores.
  • Despliega un contenedor de Alpine llamado myalpine en la red personalizada y asegúrate de que pueda comunicarse con otro contenedor llamado mypython (basado en la imagen de Python) dentro de la misma red.

Requisitos

  • Todas las operaciones deben realizarse dentro del directorio /home/labex/project.
  • Utiliza los siguientes comandos:
    • Para crear una red personalizada: docker network create
    • Para conectar contenedores a una red: docker network connect

Ejemplo

Al finalizar las tareas, la red personalizada debería ser visible al ejecutar docker network ls, y el contenedor de Python debería poder comunicarse con éxito con otros contenedores dentro de la red.

Visualizar la red:

labex:~/ $ docker network ls
NETWORK ID     NAME        DRIVER    SCOPE
1a367e6cc4e5   bridge      bridge    local
91199fc6ad2e   host        host      local
32e2857073a9   minikube    bridge    local
92d3b71b7efd   mynetwork   bridge    local
1078d2c781b6   none        null      local

Comprobar la conexión entre contenedores mediante ping:

labex:~/ $ docker exec myalpine ping mypython
PING mypython (172.18.0.3): 56 data bytes
64 bytes from 172.18.0.3: seq=0 ttl=64 time=0.153 ms
64 bytes from 172.18.0.3: seq=1 ttl=64 time=0.072 ms
64 bytes from 172.18.0.3: seq=2 ttl=64 time=0.069 ms

Resumen

En este desafío, has asumido el papel de un domador de caballos salvajes en las antiguas praderas, dominando el arte de gestionar contenedores Docker. Al completar estas tareas y comprender las soluciones, has adquirido habilidades fundamentales en la gestión de contenedores y redes de Docker, conocimientos indispensables para sobrevivir y prosperar en el indómito ecosistema de Docker.

✨ Revisar Solución y Practicar✨ Revisar Solución y Practicar