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
mynginxy 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
~/projecten la ruta/appdel 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
- Para crear contenedores:
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
mynetworkpara los contenedores. - Despliega un contenedor de Alpine llamado
myalpineen la red personalizada y asegúrate de que pueda comunicarse con otro contenedor llamadomypython(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
- Para crear una red personalizada:
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.



