Spaces:
Paused
Paused
ARG PYTHON_VERSION=3.10 | |
FROM python:${PYTHON_VERSION}-slim as base | |
# Prevents Python from writing pyc files. | |
ENV PYTHONDONTWRITEBYTECODE=1 | |
ENV PYTHONUNBUFFERED=1 | |
WORKDIR /app | |
ARG UID=10001 | |
RUN adduser \ | |
--disabled-password \ | |
--gecos "" \ | |
--home "/nonexistent" \ | |
--shell "/sbin/nologin" \ | |
--no-create-home \ | |
--uid "${UID}" \ | |
appuser | |
RUN --mount=type=cache,target=/root/.cache/pip \ | |
--mount=type=bind,source=requirements.txt,target=requirements.txt \ | |
python -m pip install -r requirements.txt | |
# Switch to the non-privileged user to run the application. | |
USER appuser | |
# Copy the source code into the container. | |
COPY . . | |
COPY . .env | |
# Expose the port that the application listens on. | |
EXPOSE 8000 | |
# Run the application. | |
ENTRYPOINT ["gunicorn", "app:app"] | |
CMD ["-b", "0.0.0.0:7860"] | |