File size: 854 Bytes
0dc302d 84308e2 b5e16c8 5d86b96 9a41c54 b5e16c8 ab1c7fb e4b04f2 ab1c7fb b5e16c8 7a643e7 b5e16c8 7a643e7 b5e16c8 9facb6f b5e16c8 fc6863a ab1c7fb 0dc302d |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 |
FROM python:3.11-slim
# 1. First create user and directory structure
RUN useradd -m appuser && \
mkdir -p /app/data && \
chown -R appuser:appuser /app
# 2. Switch to appuser early
USER appuser
WORKDIR /app
# 3. Temporary root access for system packages
USER root
RUN apt-get update && apt-get install -y \
ffmpeg \
tesseract-ocr \
tesseract-ocr-tam \
fonts-liberation \
&& rm -rf /var/lib/apt/lists/*
# 4. Switch back to appuser for Python operations
USER appuser
# 5. Install Python packages (first copy just requirements)
COPY --chown=appuser:appuser requirements.txt .
RUN pip install --no-cache-dir -r requirements.txt
# 6. Copy all application files
COPY --chown=appuser:appuser app.py image_fetcher.py video.py video2.py ./
# 7. Environment variables
ENV BASE_DIR="/app/data"
EXPOSE 7860
CMD ["python", "app.py"] |