32 lines
1.6 KiB
Docker
Raw Permalink Normal View History

2025-09-11 07:17:37 -03:00
# ===========================================
# DOCKERFILE PARA APLICACIÓN BACKEND PYTHON
# ===========================================
# Usamos una imagen base ligera de Python 3.10 basada en Alpine Linux
# Alpine es una distribución Linux muy pequeña (~5MB) que reduce el tamaño de la imagen
# python:3.10-alpine incluye Python 3.10 y las herramientas básicas necesarias
FROM python:3.10-alpine
# Establecemos el directorio de trabajo dentro del contenedor
# Todas las operaciones posteriores (COPY, RUN, CMD) se ejecutarán desde este directorio
# /usr/src/app es una convención común para aplicaciones en contenedores
WORKDIR /usr/src/app
# Copiamos el archivo de la aplicación Python desde el host al contenedor
# El primer parámetro (app.py) es el archivo fuente en el host
# El segundo parámetro (.) es el destino en el contenedor (directorio actual = /usr/src/app)
# Esto copia app.py al directorio de trabajo del contenedor
COPY app.py .
# Exponemos el puerto 8000 que usará el servidor web
# Esta instrucción es solo documentativa - no abre el puerto automáticamente
# El puerto se abre realmente cuando se ejecuta el contenedor con -p o en docker-compose
# Es una buena práctica documentar qué puertos usa la aplicación
EXPOSE 8000
# Comando por defecto para iniciar la aplicación cuando se ejecute el contenedor
# Se ejecuta automáticamente cuando se inicia el contenedor (a menos que se sobrescriba)
# Formato de array: ["comando", "argumento1", "argumento2"]
# python app.py ejecutará el archivo app.py con el intérprete de Python
CMD ["python", "app.py"]