¿Qué es Docker?

Docker es una plataforma de código abierto que permite automatizar el despliegue de aplicaciones dentro de contenedores de software, proporcionando una capa adicional de abstracción y automatización.

Conceptos clave

Contenedores

Un contenedor es una unidad estándar de software que empaqueta el código y todas sus dependencias.

Imágenes

Una imagen de Docker es una plantilla de solo lectura con instrucciones para crear un contenedor.

Dockerfile

Archivo de texto que contiene todos los comandos necesarios para construir una imagen.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
FROM ubuntu:22.04

RUN apt-get update && apt-get install -y \
    python3 \
    python3-pip

WORKDIR /app

COPY requirements.txt .
RUN pip3 install -r requirements.txt

COPY . .

CMD ["python3", "app.py"]

Comandos básicos

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
# Construir imagen
docker build -t mi-app:latest .

# Ejecutar contenedor
docker run -d -p 8080:80 mi-app:latest

# Listar contenedores
docker ps

# Ver logs
docker logs <container-id>

# Detener contenedor
docker stop <container-id>

Ventajas

Portabilidad: Funciona igual en cualquier entorno
Eficiencia: Menos recursos que máquinas virtuales
Aislamiento: Cada contenedor es independiente
Escalabilidad: Fácil de escalar horizontalmente

Conceptos Relacionados

Referencias