2025-06-03 14:05:05 +02:00
|
|
|
# Usar imagen base UBI9 de Python de Red Hat
|
|
|
|
|
FROM registry.access.redhat.com/ubi9/python-39:latest
|
2025-05-30 19:09:28 +02:00
|
|
|
|
2025-06-03 14:05:05 +02:00
|
|
|
# Usuario por defecto en las imágenes UBI es no-root (default)
|
|
|
|
|
USER 0
|
|
|
|
|
|
|
|
|
|
# Establecer directorio de trabajo
|
2025-05-30 19:09:28 +02:00
|
|
|
WORKDIR /app
|
|
|
|
|
|
2025-06-03 14:05:05 +02:00
|
|
|
# Instalar ffmpeg usando el gestor de paquetes de Red Hat (dnf)
|
|
|
|
|
RUN dnf install -y https://dl.fedoraproject.org/pub/epel/epel-release-latest-9.noarch.rpm && \
|
2025-06-05 01:51:13 +02:00
|
|
|
dnf install -y dnf-plugins-core && \
|
|
|
|
|
dnf config-manager --set-enabled crb && \
|
2025-06-03 14:05:05 +02:00
|
|
|
dnf install -y ffmpeg && \
|
|
|
|
|
dnf clean all
|
|
|
|
|
|
|
|
|
|
# Copiar archivos de la aplicación
|
|
|
|
|
COPY requirements.txt .
|
|
|
|
|
|
|
|
|
|
# Instalar dependencias de Python
|
|
|
|
|
# Las imágenes UBI de Python utilizan pip-install en lugar de pip directamente
|
|
|
|
|
RUN pip install --no-cache-dir -r requirements.txt
|
2025-05-30 19:09:28 +02:00
|
|
|
|
2025-06-03 14:05:05 +02:00
|
|
|
# Copiar código de la aplicación
|
2025-05-30 19:09:28 +02:00
|
|
|
COPY app.py .
|
|
|
|
|
|
2025-06-03 14:05:05 +02:00
|
|
|
# Crear directorio compartido y configurar permisos adecuados para OpenShift
|
|
|
|
|
RUN mkdir -p /app/shared && \
|
|
|
|
|
chmod -R 775 /app && \
|
|
|
|
|
chgrp -R 0 /app && \
|
|
|
|
|
chmod -R g=u /app
|
|
|
|
|
|
|
|
|
|
# Volver al usuario predeterminado de la imagen UBI (no-root)
|
|
|
|
|
USER default
|
|
|
|
|
|
|
|
|
|
# Comando para iniciar la aplicación
|
2025-05-30 19:09:28 +02:00
|
|
|
CMD ["python", "app.py"]
|