jung-ming commited on
Commit
f14242b
·
verified ·
1 Parent(s): e84f1ab

Update Dockerfile

Browse files
Files changed (1) hide show
  1. Dockerfile +18 -11
Dockerfile CHANGED
@@ -1,21 +1,28 @@
1
- FROM python:3.9-slim
 
2
 
 
3
  WORKDIR /app
4
 
5
- RUN apt-get update && apt-get install -y \
 
 
 
 
6
  build-essential \
7
- curl \
8
- software-properties-common \
9
- git \
10
  && rm -rf /var/lib/apt/lists/*
11
 
12
- COPY requirements.txt ./
13
- COPY src/ ./src/
14
 
15
- RUN pip3 install -r requirements.txt
 
16
 
17
- EXPOSE 8501
 
18
 
19
- HEALTHCHECK CMD curl --fail http://localhost:8501/_stcore/health
 
20
 
21
- ENTRYPOINT ["streamlit", "run", "src/streamlit_app.py", "--server.port=8501", "--server.address=0.0.0.0"]
 
 
1
+ # 使用官方 Python 3.10 slim 版本作為基底
2
+ FROM python:3.10-slim
3
 
4
+ # 設定工作目錄
5
  WORKDIR /app
6
 
7
+ # 複製 requirements.txt 到容器中
8
+ COPY requirements.txt .
9
+
10
+ # 安裝系統依賴(如果需要)
11
+ RUN apt-get update && apt-get install -y --no-install-recommends \
12
  build-essential \
 
 
 
13
  && rm -rf /var/lib/apt/lists/*
14
 
15
+ # 安裝 Python 套件
16
+ RUN pip install --no-cache-dir -r requirements.txt
17
 
18
+ # 複製所有程式碼到容器中
19
+ COPY . .
20
 
21
+ # 設定環境變數避免 streamlit 預設瀏覽器自動開啟
22
+ ENV STREAMLIT_SERVER_HEADLESS=true
23
 
24
+ # 開放 streamlit 監聽的 port
25
+ EXPOSE 8501
26
 
27
+ # 容器啟動時執行 streamlit
28
+ CMD ["streamlit", "run", "app.py", "--server.port=8501", "--server.address=0.0.0.0"]