Files
microservice/Dockerfile.prod

34 lines
743 B
Docker

# Multi-stage build para optimizar el tamaño de la imagen
FROM python:3.11-slim as builder
RUN apt-get update && apt-get install -y \
gcc \
g++ \
&& rm -rf /var/lib/apt/lists/*
WORKDIR /app
COPY requirements.txt .
RUN pip install --user --no-cache-dir --verbose -r requirements.txt
FROM python:3.11-slim
ENV PYTHONDONTWRITEBYTECODE=1
ENV PYTHONUNBUFFERED=1
ENV PYTHONPATH=/app
ENV PATH=/home/fastapi/.local/bin:$PATH
RUN groupadd -r fastapi && useradd -r -g fastapi fastapi
RUN apt-get update && apt-get install -y curl && rm -rf /var/lib/apt/lists/*
WORKDIR /app
COPY --from=builder /root/.local /home/fastapi/.local
COPY . .
USER fastapi
EXPOSE 8001
CMD ["uvicorn", "main:app", "--host", "0.0.0.0", "--port", "8001"]