imbecome commited on
Commit
a74ea85
·
verified ·
1 Parent(s): 24e4796

Update Dockerfile

Browse files
Files changed (1) hide show
  1. Dockerfile +46 -20
Dockerfile CHANGED
@@ -1,47 +1,73 @@
1
  FROM python:3.10-slim
2
 
3
- # Install system dependencies
 
 
4
  RUN apt-get update && apt-get install -y \
5
- curl ffmpeg git build-essential libgomp1 procps \
 
 
 
 
 
 
6
  && rm -rf /var/lib/apt/lists/*
7
 
8
- # FIX: Download biner Ollama langsung dari source resmi (Bukan GitHub Release)
9
- RUN curl -L https://ollama.com/download/ollama-linux-amd64 -o /usr/bin/ollama && \
10
- chmod +x /usr/bin/ollama
 
11
 
12
- # Pastikan folder ada dan dimiliki oleh user 1000
13
- RUN mkdir -p /home/user/app/models_cache/.ollama && \
14
- chmod -R 777 /home/user/app/models_cache
15
-
16
- # Buat user non-root
17
  RUN useradd -m -u 1000 user
 
18
  WORKDIR /home/user/app
19
 
20
- # Buat folder cache dan beri izin akses
 
 
21
  RUN mkdir -p /home/user/app/models_cache/.ollama && \
22
  chown -R user:user /home/user/app
23
 
24
- # Copy requirements & install
25
- COPY --chown=user:user requirements.txt .
 
 
 
26
  RUN pip install --no-cache-dir --upgrade pip && \
27
  pip install --no-cache-dir -r requirements.txt
28
 
29
- # Copy sisa project
30
- COPY --chown=user:user . .
 
 
31
 
32
- # Set Environment Variables
 
 
33
  ENV HF_HOME=/home/user/app/models_cache
34
  ENV OLLAMA_MODELS=/home/user/app/models_cache/.ollama
35
  ENV HOME=/home/user/app
36
  ENV PYTHONUNBUFFERED=1
37
 
38
- # Pastikan script start.sh bisa dieksekusi
39
- RUN chmod +x start.sh
 
 
 
40
 
41
  USER user
42
 
43
- # Download model Transformers/Whisper saat build (opsional)
44
- RUN python download_models.py
 
 
45
 
 
 
 
46
  EXPOSE 7860
 
47
  CMD ["./start.sh"]
 
1
  FROM python:3.10-slim
2
 
3
+ # =============================
4
+ # SYSTEM DEPENDENCIES
5
+ # =============================
6
  RUN apt-get update && apt-get install -y \
7
+ curl \
8
+ ffmpeg \
9
+ git \
10
+ build-essential \
11
+ libgomp1 \
12
+ procps \
13
+ ca-certificates \
14
  && rm -rf /var/lib/apt/lists/*
15
 
16
+ # =============================
17
+ # INSTALL OLLAMA (OFFICIAL INSTALLER)
18
+ # =============================
19
+ RUN curl -fsSL https://ollama.com/install.sh | sh
20
 
21
+ # =============================
22
+ # CREATE USER
23
+ # =============================
 
 
24
  RUN useradd -m -u 1000 user
25
+
26
  WORKDIR /home/user/app
27
 
28
+ # =============================
29
+ # CREATE CACHE DIRECTORY
30
+ # =============================
31
  RUN mkdir -p /home/user/app/models_cache/.ollama && \
32
  chown -R user:user /home/user/app
33
 
34
+ # =============================
35
+ # COPY REQUIREMENTS
36
+ # =============================
37
+ COPY requirements.txt .
38
+
39
  RUN pip install --no-cache-dir --upgrade pip && \
40
  pip install --no-cache-dir -r requirements.txt
41
 
42
+ # =============================
43
+ # COPY PROJECT FILES
44
+ # =============================
45
+ COPY . .
46
 
47
+ # =============================
48
+ # ENVIRONMENT VARIABLES
49
+ # =============================
50
  ENV HF_HOME=/home/user/app/models_cache
51
  ENV OLLAMA_MODELS=/home/user/app/models_cache/.ollama
52
  ENV HOME=/home/user/app
53
  ENV PYTHONUNBUFFERED=1
54
 
55
+ # =============================
56
+ # PERMISSION
57
+ # =============================
58
+ RUN chmod +x start.sh && \
59
+ chown -R user:user /home/user/app
60
 
61
  USER user
62
 
63
+ # =============================
64
+ # OPTIONAL MODEL DOWNLOAD
65
+ # =============================
66
+ RUN python download_models.py || true
67
 
68
+ # =============================
69
+ # PORT
70
+ # =============================
71
  EXPOSE 7860
72
+
73
  CMD ["./start.sh"]