Ir al contenido

Conceptos 04 - Comandos esenciales del módulo práctico

Resumen de los comandos que encontrará en los ejercicios prácticos del módulo, organizados por función. Seleccione cualquier comando de un grupo para ver un ejemplo de uso en terminal.

  • 8 secciones
  • 26 comandos
  • 2 simuladores
  • Autoevaluación final

Concepto 1 de 8

Gestión de imágenes

Descargar, construir, listar y eliminar las imágenes locales a partir de las cuales se crean los contenedores.

Descarga una imagen desde un registry.

docker pull nginx:alpinealpine: Pulling from library/nginxStatus: Downloaded newer image for nginx:alpine

Opcional si va a usar docker run, ya que este descarga la imagen automáticamente cuando no existe localmente.

Concepto 2 de 8

Ejecución de contenedores

Crear e iniciar contenedores con docker run y combinar sus flags más usadas.

Crea e inicia un contenedor. Descarga la imagen si no existe localmente.

docker run nginx:alpine/docker-entrypoint.sh: Configuration complete2025/01/15 ready for connections

Ejecuta en primer plano. Ctrl+C detiene el contenedor.

Concepto 3 de 8

Inspección y monitoreo

Consultar qué contenedores existen, qué escriben en su salida y cómo están configurados.

Lista los contenedores en ejecución.

docker psCONTAINER ID  IMAGE         STATUS       PORTS                 NAMESb8e2a1c3d4f5  nginx:alpine  Up 2 min     0.0.0.0:8080->80/tcp  web

Concepto 4 de 8

Control del ciclo de vida

Detener, iniciar, reiniciar y eliminar contenedores que ya existen.

Detiene el contenedor de forma controlada.

docker stop webweb

Envía SIGTERM y espera 10 segundos antes de SIGKILL.

Prueba las órdenes en cualquier orden y observa el estado del contenedor web. Algunas no son válidas en ciertos estados: la terminal muestra el error que devolvería Docker.

  1. No existeSolo está la imagen
  2. En ejecuciónSTATUS: Up
  3. DetenidoSTATUS: Exited

El contenedor web todavía no existe. Empieza con docker run.

Concepto 5 de 8

Interacción

Entrar a un contenedor en ejecución o conectarse a su proceso principal.

Abre una terminal interactiva dentro del contenedor.

docker exec -it web sh/ # ls /usr/share/nginx/html50x.html  index.html/ # exit

En imágenes Alpine use sh. En Ubuntu o Debian, bash. Al salir con exit, el contenedor sigue activo.

Concepto 6 de 8

Limpieza del sistema

Medir el uso de disco y recuperar espacio eliminando recursos sin uso.

Muestra el uso de disco por tipo de recurso Docker.

docker system dfTYPE           TOTAL   ACTIVE   SIZE      RECLAIMABLEImages         5       2        1.2GB     820MB (68%)Containers     3       1        12.5MB    10MB (80%)Volumes        2       1        256MB     128MB (50%)

Concepto 7 de 8

Redes y volúmenes

Listar y crear redes para comunicar contenedores, y volúmenes para persistir datos.

Lista las redes disponibles en Docker.

docker network lsNETWORK ID    NAME      DRIVER    SCOPEa1b2c3d4e5f6  bridge    bridge    localf7a8b9c0d1e2  host      host      locald3e4f5a6b7c8  none      null      local

Concepto 8 de 8

Flujo mínimo completo

Secuencia completa que cubre el ciclo de trabajo práctico del módulo.

Recorre la secuencia build → run → ps → logs → exec → stop → rm paso a paso y observa cómo cambian la imagen, el contenedor y el puerto.

$ docker build -t app .

[+] Building 8.2s (10/10) FINISHED

=> exporting to image

=> naming to docker.io/library/app

Construye la imagen app a partir del Dockerfile del directorio actual.

Imagen app
Construida
Contenedor web
No existe
Puerto 8080 del host
Libre
Paso 1 de 7

La secuencia completa en un solo bloque:

Ventana de terminal
# 1. Construir la imagen
$ docker build -t app .
# 2. Ejecutar el contenedor
$ docker run -d -p 8080:80 --name web app
# 3. Verificar estado
$ docker ps
# 4. Consultar logs
$ docker logs web
# 5. Inspeccionar internamente
$ docker exec -it web sh
# 6. Detener el contenedor
$ docker stop web
# 7. Eliminar el contenedor
$ docker rm web

Autoevaluación

Comprueba lo que aprendiste

Cinco preguntas rápidas para verificar las ideas clave de la lectura. Cada respuesta incluye una explicación.

  1. 1¿Por qué docker pull es opcional antes de docker run?
  2. 2En docker run -d -p 8080:80 nginx:alpine, ¿qué significa 8080:80?
  3. 3Ejecuta docker rm web y Docker responde que el contenedor está en ejecución. ¿Qué hace?
  4. 4¿Qué comando conviene usar para depurar un contenedor en ejecución sin arriesgarse a detenerlo?
  5. 5¿Qué conviene ejecutar antes de docker system prune?

0/5 respuestas correctas