Home » Aprende Docker desde cero
Docker desde cero creando tu primer contenedor paso a paso

Aprende Docker desde cero

Guía práctica de Docker desde cero para crear y ejecutar tu primer contenedor paso a paso, sin teoría innecesaria.

Docker desde cero creando tu primer contenedor

Empezar con Docker desde cero puede parecer intimidante al inicio, pero en la práctica, crear tu primer contenedor es mucho más simple de lo que muchos imaginan. De hecho, la mejor forma de aprender Docker no es leyendo conceptos abstractos, sino ejecutando contenedores reales desde el primer momento.

En este artículo veremos Docker desde cero paso a paso, enfocándonos en la creación y ejecución de tu primer contenedor. El objetivo no es memorizar definiciones, sino entender qué ocurre realmente cuando ejecutas Docker y cómo empezar a usarlo de forma práctica en tu día a día como DevOps, desarrollador o ingeniero de sistemas.


Qué problema resuelve Docker en la práctica

Antes de crear tu primer contenedor, conviene entender el problema real que Docker resuelve, sin entrar en teoría pesada.

En entornos tradicionales:

  • Las aplicaciones dependen del sistema operativo
  • Existen conflictos de versiones
  • Replicar un entorno es costoso
  • “En mi máquina funciona” es una frase común

Con Docker desde cero, el enfoque cambia:

  • La aplicación viaja con sus dependencias
  • El entorno es reproducible
  • La ejecución es consistente
  • El despliegue es más simple

Esto es lo que hace que Docker sea tan atractivo en proyectos modernos.


Verificando que Docker esté instalado

El primer paso en Docker desde cero es verificar que Docker esté disponible en tu sistema.

Ejecuta:

docker version

Si Docker está correctamente instalado, verás información del cliente y del servidor. Esto confirma que:

  • El cliente Docker funciona
  • El daemon Docker está corriendo

Este punto es importante, ya que sin el daemon no podrás ejecutar contenedores.


Ejecutando tu primer contenedor con Docker

Aquí es donde realmente empieza Docker desde cero.

Ejecuta el siguiente comando:

docker run hello-world

Este comando hace varias cosas automáticamente:

  1. Busca la imagen hello-world localmente
  2. Si no existe, la descarga desde Docker Hub
  3. Crea un contenedor
  4. Ejecuta el contenedor
  5. Muestra la salida

Este primer contenedor confirma que Docker funciona correctamente.


Entendiendo qué es una imagen y un contenedor

En Docker desde cero es fundamental diferenciar estos dos conceptos, pero de forma práctica.

  • Imagen: plantilla inmutable
  • Contenedor: instancia en ejecución de una imagen

Cuando ejecutas:

docker run hello-world

Docker crea un contenedor a partir de la imagen. El contenedor se ejecuta y luego termina.

Puedes listar los contenedores ejecutados con:

docker ps -a

Ejecutando un contenedor interactivo

Un siguiente paso práctico en Docker desde cero es ejecutar un contenedor interactivo.

Ejemplo con Ubuntu:

docker run -it ubuntu:latest /bin/bash

Aquí ocurre lo siguiente:

  • Docker descarga la imagen ubuntu si no existe
  • Crea un contenedor
  • Abre una sesión interactiva de Bash

Ahora estás dentro de un contenedor Linux aislado del host.


Ejecutando comandos dentro del contenedor

Una vez dentro del contenedor, puedes ejecutar comandos como si fuera un sistema Linux normal:

apt update
apt install -y curl
curl https://example.com

Este enfoque demuestra uno de los grandes beneficios de Docker desde cero: entornos efímeros y reproducibles.

Cuando sales del contenedor con exit, el contenedor se detiene.


Ejecutando contenedores en segundo plano

No todos los contenedores se ejecutan de forma interactiva. Muchos servicios se ejecutan en segundo plano.

Ejemplo práctico:

docker run -d nginx

Aquí:

  • -d ejecuta el contenedor en background
  • Docker descarga la imagen de Nginx
  • El contenedor queda corriendo

Puedes verificarlo con:

docker ps

Exponiendo puertos de un contenedor

Uno de los pasos más importantes en Docker desde cero es exponer servicios.

Ejemplo:

docker run -d -p 8080:80 nginx

Esto mapea:

  • Puerto 8080 del host
  • Puerto 80 del contenedor

Ahora puedes acceder desde tu navegador a:

http://localhost:8080

Este patrón es fundamental en cualquier uso real de Docker.


Nombrando contenedores para facilitar la gestión

Por defecto, Docker asigna nombres aleatorios a los contenedores. Sin embargo, en Docker desde cero es buena práctica asignar nombres explícitos.

Ejemplo:

docker run -d --name web-nginx -p 8080:80 nginx

Esto facilita:

  • Debugging
  • Automatización
  • Uso de scripts

Inspeccionando contenedores

Docker proporciona comandos muy útiles para entender qué está pasando internamente.

Ejemplo:

docker inspect web-nginx

Esto devuelve información detallada sobre:

  • Configuración
  • Redes
  • Volúmenes
  • Estado del contenedor

Es una herramienta clave cuando algo no funciona como esperas.


Deteniendo y eliminando contenedores

Parte del aprendizaje de Docker desde cero es saber limpiar recursos.

Para detener un contenedor:

docker stop web-nginx

Para eliminarlo:

docker rm web-nginx

Esto es especialmente importante cuando trabajas con muchos contenedores de prueba.


Creando tu primer Dockerfile

Hasta ahora hemos usado imágenes existentes. El siguiente paso natural en Docker desde cero es crear tu propia imagen.

Crea un archivo llamado Dockerfile:

FROM nginx:alpine
COPY index.html /usr/share/nginx/html/index.html

Y un archivo index.html simple.

Luego ejecuta:

docker build -t mi-primer-contenedor .

Esto crea una imagen personalizada.


Ejecutando tu imagen personalizada

Una vez creada la imagen, ejecútala:

docker run -d -p 8080:80 mi-primer-contenedor

Ahora estás ejecutando tu propio contenedor, creado desde cero.

Este es un hito importante en el aprendizaje de Docker.


Tips prácticos de DevOps al empezar con Docker

Algunos consejos reales al trabajar con Docker desde cero:

  • Usa imágenes pequeñas cuando sea posible
  • Nombra contenedores e imágenes
  • Elimina recursos que no uses
  • Versiona tus Dockerfiles
  • No metas secretos dentro de las imágenes

Estas prácticas te ahorrarán problemas más adelante.


Cuándo pasar al siguiente nivel

Una vez que dominas Docker desde cero y la creación de tu primer contenedor, el siguiente paso suele ser:

  • Docker Compose
  • Automatización con scripts
  • CI/CD
  • Kubernetes

Pero todo parte de entender bien estos fundamentos.

Ahora que ya conoces lo básico de Docker, te podría interesar Probar Vault en Docker.


¿Ya creaste tu primer contenedor con Docker o todavía estás dando los primeros pasos?
Cuéntame en los comentarios o comparte este artículo con alguien que esté empezando en Docker.

Post navigation

Deja un comentario

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *