dos formas principales de trabajar:
Dockerfile
Es un archivo de texto con instrucciones para construir una imagen
Contiene el "código fuente" de la imagen
Es editable - puedes modificarlo cuando quieras
No es ejecutable directamente
Ejemplo de Dockerfile:
FROM ubuntu:20.04 RUN apt-get update && apt-get install -y python3 COPY . /app WORKDIR /app CMD ["python3", "app.py"]
Imagen de Docker
Es el resultado compilado del Dockerfile
Es un paquete ejecutable que contiene todo lo necesario para correr una aplicación
Es de solo lectura - no se modifica directamente
Se puede ejecutar para crear contenedores
Se almacena en un registro como Docker Hub
Analogía útil
Dockerfile = Receta de cocina (instrucciones)
Imagen de Docker = Plato cocinado (resultado listo para usar)
Flujo de trabajo
Escribes un Dockerfile
Construyes la imagen:
docker build -t mi-app .Ejecutas la imagen:
docker run mi-app
dos formas principales de trabajar:
1. Usar imágenes pre-construidas (Descargar)
# Descargas una imagen ya hecha de Docker Hub
docker pull nginx
docker pull python:3.9
docker pull mysql
# Y las ejecutas directamente
docker run -d nginxVentajas: Rápido, no necesitas configurar nada
2. Crear tus propias imágenes (Con Dockerfile)
# Creas un Dockerfile personalizado
# Luego construyes tu imagen
docker build -t mi-app-personalizada .
# Y ejecutas tu imagen personalizada
docker run mi-app-personalizadaVentajas: Total control, aplicaciones específicas
Escenarios típicos:
Cuando descargar imágenes:
Bases de datos (MySQL, PostgreSQL)
Servidores web (Nginx, Apache)
Lenguajes/frameworks (Python, Node.js)
Herramientas (Redis, MongoDB)
Cuando crear tu propio Dockerfile:
Tu aplicación personalizada
Cuando necesitas dependencias específicas
Para empaquetar tu código
Entornos de desarrollo custom
Ejemplo práctico:
# Caso 1: Usar PostgreSQL pre-construido
docker run --name mi-db -e POSTGRES_PASSWORD=1234 -d postgres
# Caso 2: Crear mi app con Dockerfile
# (Después de crear el Dockerfile)
docker build -t mi-api .
docker run -p 5000:5000 mi-api
Comentarios
Publicar un comentario