File size: 604 Bytes
2ce2e45 93edcef 2ce2e45 93edcef |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
FROM python:3.12
# Create a dedicated non-root user & group
RUN addgroup --system appgroup && adduser --system --ingroup appgroup appuser
# Create working dirs
WORKDIR /app
RUN mkdir -p /app/logs && mkdir -p /app/venv && chown -R appuser:appgroup /app
# Copy code and requirements
COPY . /app/
# Install venv + dependencies as root
RUN python -m venv /app/venv \
&& /app/venv/bin/pip install --upgrade pip \
&& /app/venv/bin/pip install --no-cache-dir -r requirements.txt
# Switch to non-root user
USER appuser
# Default command always uses venv Python
CMD ["/app/venv/bin/python", "manager.py"]
|