Spaces:
Sleeping
Sleeping
FROM python:3.11.11-slim AS build | |
ENV PIP_DEFAULT_TIMEOUT=100 \ | |
PYTHONUNBUFFERED=1 \ | |
PIP_DISABLE_PIP_VERSION_CHECK=1 \ | |
PIP_NO_CACHE_DIR=1 | |
WORKDIR /app | |
COPY requirements.txt . | |
RUN pip install --upgrade pip && pip wheel --no-cache-dir --wheel-dir /wheels -r requirements.txt | |
FROM python:3.11.11-slim AS final | |
WORKDIR /app | |
ENV PIP_DEFAULT_TIMEOUT=100 \ | |
PYTHONUNBUFFERED=1 \ | |
PIP_DISABLE_PIP_VERSION_CHECK=1 \ | |
PIP_NO_CACHE_DIR=1 | |
RUN set -ex \ | |
&& addgroup --system --gid 1001 appgroup \ | |
&& adduser --system --uid 1001 --gid 1001 --no-create-home appuser \ | |
&& apt-get update \ | |
&& apt-get upgrade -y \ | |
&& apt-get install -y libjpeg-dev zlib1g-dev \ | |
# π¨ Buat folder ml-models untuk menyimpan model | |
&& mkdir -p /app/ml-models && chown -R appuser:appgroup /app/ml-models \ | |
&& apt-get autoremove -y \ | |
&& apt-get clean -y \ | |
&& rm -rf /var/lib/apt/lists/* | |
COPY --from=build /app/requirements.txt . | |
RUN pip install -r requirements.txt | |
COPY ./artifacts artifacts | |
COPY ./api api | |
EXPOSE 7860 | |
USER appuser | |
CMD ["uvicorn", "api.main:app", "--host", "0.0.0.0", "--port", "7860"] | |