Mystyc commited on
Commit
6edda7f
·
verified ·
1 Parent(s): f3f6373

Update Dockerfile

Browse files
Files changed (1) hide show
  1. Dockerfile +24 -6
Dockerfile CHANGED
@@ -1,18 +1,36 @@
1
  FROM python:3.10-slim
2
 
3
- # Lebih cepat & lebih kecil
4
  RUN apt-get update && apt-get install -y git && rm -rf /var/lib/apt/lists/*
5
 
6
- # Install deps
7
- RUN pip install --no-cache-dir fastapi==0.110.3 uvicorn==0.30.1 rembg==2.0.57 pillow==10.3.0
 
 
 
 
 
8
 
9
- RUN pip install fastapi uvicorn rembg python-multipart
10
-
11
- # ---- FIX: nonaktifkan Numba JIT untuk hindari error caching ----
12
  ENV NUMBA_DISABLE_JIT=1
 
 
 
 
 
 
13
 
14
  WORKDIR /app
15
  COPY app.py /app/app.py
16
 
 
 
 
 
 
 
 
 
 
17
  EXPOSE 7860
18
  CMD ["uvicorn", "app:app", "--host", "0.0.0.0", "--port", "7860"]
 
1
  FROM python:3.10-slim
2
 
3
+ # tools minimal
4
  RUN apt-get update && apt-get install -y git && rm -rf /var/lib/apt/lists/*
5
 
6
+ # lib python
7
+ RUN pip install --no-cache-dir \
8
+ fastapi==0.110.3 \
9
+ uvicorn==0.30.1 \
10
+ rembg==2.0.57 \
11
+ pillow==10.3.0 \
12
+ python-multipart==0.0.9
13
 
14
+ # ---- FIX: numba & cache lokasi model ----
 
 
15
  ENV NUMBA_DISABLE_JIT=1
16
+ ENV HOME=/root
17
+ ENV U2NET_HOME=/root/.u2net
18
+ ENV POOCH_HOME=/root/.cache/pooch
19
+
20
+ # siapkan folder cache yg writable
21
+ RUN mkdir -p /root/.u2net /root/.cache/pooch && chmod -R 777 /root/.u2net /root/.cache
22
 
23
  WORKDIR /app
24
  COPY app.py /app/app.py
25
 
26
+ # (OPSI KUAT DISARANKAN) Prefetch model saat build agar request pertama cepat
27
+ # ini akan otomatis download model U²Net ke U2NET_HOME/POOCH_HOME
28
+ RUN python - <<'PY'
29
+ from rembg.session_base import new_session
30
+ # model default 'u2net' cukup untuk foto produk
31
+ new_session('u2net')
32
+ print('Model U2Net terunduh.')
33
+ PY
34
+
35
  EXPOSE 7860
36
  CMD ["uvicorn", "app:app", "--host", "0.0.0.0", "--port", "7860"]