Docker. Arrancando con el primer contenedor en Docker.

Docker. Arrancando con el primer contenedor en Docker.
 
Antes de ejecutar tu primer contenedor en Docker, primeramente, debes de conocer y entender la arquitectura de Docker y los conceptos base. Además, debes de tener instalado Docker en tu equipo. Para esto te sugiero que revises las siguientes publicaciones:
Una vez tengas claro estos temas e instalado Docker en tu equipo, vamos a por ello.
 
El comando que verás en un momento, se trata de la ejecución de tu primer contenedor. Este contenedor se basa en la imagen de “ubuntu”, sí, de la distribución Linux de Canonical. Además, vamos a ejecutar bash en la terminal.
 
El nombre de una imagen de Docker tiene el siguiente formato:
 
<repository>/<image>:<tag>
 
Existe un repositorio público por defecto llamado “library” que es mantenido por Docker. Cuando no se especifica la etiqueta <tag>, por defecto busca y usa la etiqueta llamada “latest”. La etiqueta <tag> generalmente especifica la versión (no es del todo un requerimiento).
 
Ejecutando el comando.
 
> docker run -i -t ubuntu /bin/bash
 
Esto es lo que pasa al momento que ejecutás el comando de arriba:
 
  1. Docker busca dentro del Registry, primeramente, en el registro local. Al no encontrar la imagen “ubuntu:latest", Docker se descarga la imagen del registro público por defecto llamado “library” (Docker Hub). Posiblemente, en la terminal se muestre el siguiente mensaje.
Unable to find image 'ubuntu:latest' locally
latest: Pulling from library/ubuntu
88286f41530e: Pull complete
Digest: sha256:f006ecbb824d87947d0b51ab8488634bf69fe4094959d935c0c103f4820a417d
Status: Downloaded newer image for ubuntu:latest
888e89a3b36b
 
Para descargas imágenes de Docker Hub, es necesario ejecutar el comando:
 
> docker pull <nombre_de_la_image>
 
  1. Una vez descargada la imagen, Docker crea un contenedor de la imagen, como si ejecutaras el comando docker container create.
  2. Docker asigna un sistema de archivos de lectura y escritura al contenedor, como su capa final. Esto permite la ejecución del contenedor para crear o modificar archivos y directorios en su sistema de archivos local.
  3. Docker crea una interfaz de red para conectar el contenedor a la red por defecto. Esto incluye la asignación de una dirección IP.
  4. Docker inicia el contenedor y ejecuta /bin/bash. Con las banderas -i y -t, le decimos a Docker que el contenedor se ejecute interactivamente y capture la terminal para introducir texto desde el teclado (stdin) mientras la salida de contenedor se muestra en la salida de la terminal (stdout). Mientas en el contenedor este ejecutando el proceso (en este caso /bin/bash) este se mantendrá vivo. Veras en la terminal el siguiente resultado:
root@<container id>:/#
 
Por ejemplo, si ejecuta el comando docker run ubuntu hostname, en el momento en que se ejecuta el comando hostname el contenedor se detiene.
 
  1. Hasta aquí, ¡Ya se encuentra ejecutando tu primer contenedor!
  2. Para detener el contenedor, ejecuta el comando exit en la terminal. El contenedor puede iniciarse de nuevo o eliminarlo.
 
Para revisar los contenedores que se ejecutaron, utiliza el comando docker container ls -- all. Veras un resultado como este:
 
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS            PORTS               NAMES
888e89a3b36b        ubuntu              "/bin/bash"         50 seconds ago      Exited (0) 49 seconds ago             awesome_elion
 
¡IMPORTANTE! El CONTAINER ID es el hostname del contenedor.
 
Con los Contenedores podemos desde ejecutar una sola tarea hasta la ejecución de scripts para la configuración o ejecución de tareas más complejas.
 
Para que experimentes más con la ejecución de contenedores revisa las siguientes publicaciones:
  • Docker. Contenedores. Ejecutando una sola tarea.
  • Docker. Contenedores. Ejecutando una consola interactiva.
  • Docker. Contenedores. Ejecutando una base de datos.
  • Docker. Contenedores. Ejecutando una aplicación empaquetada.
Por si te perdiste de algún tema aquí te presento el temario:
 
¿Te imaginás ahorrar horas en tu computadora y trabajar como un verdadero profesional? 💻⚡
 
Ya está disponible el Pack de 10 Scripts de Automatización para Windows, diseñado para eliminar tareas repetitivas y hacer tu día mucho más eficiente.
 
Y esto es solo el comienzo… muy pronto lanzaré un Pack PRO, con automatizaciones avanzadas que llevarán tu productividad al siguiente nivel. 🚀
 

Comentarios