File tree Expand file tree Collapse file tree 1 file changed +14
-20
lines changed Expand file tree Collapse file tree 1 file changed +14
-20
lines changed Original file line number Diff line number Diff line change 1
- # 使用Python 3.9作为基础镜像
2
- FROM python:3.9 -slim
1
+ # 第一阶段:构建Python依赖
2
+ FROM python:3.10 -slim AS builder
3
3
4
4
# 设置工作目录
5
5
WORKDIR /app
6
6
7
- # 安装系统依赖
8
- RUN apt-get update && apt-get install -y \
9
- gcc \
10
- g++ \
11
- libsndfile1 \
12
- libasound2-dev \
13
- portaudio19-dev \
14
- python3-dev \
15
- && rm -rf /var/lib/apt/lists/*
16
-
17
7
# 复制依赖文件
18
8
COPY requirements.txt .
19
9
20
10
# 安装Python依赖
21
11
RUN pip install --no-cache-dir -r requirements.txt
22
12
23
- # 复制应用代码
24
- COPY app/ ./app/
25
- COPY start_server.py .
13
+ # 第二阶段:运行阶段
14
+ FROM python:3.10-slim
26
15
27
- # 创建临时目录
28
- RUN mkdir -p tmp
16
+ # 设置工作目录
17
+ WORKDIR /app
29
18
30
- # 设置环境变量
31
- ENV PYTHONPATH=/app
32
- ENV PYTHONUNBUFFERED=1
19
+ # 从构建阶段复制Python依赖
20
+ COPY --from=builder /usr/local/lib/python3.10/site-packages /usr/local/lib/python3.10/site-packages
21
+
22
+ # 创建必要的目录
23
+ RUN mkdir -p tmp data
24
+
25
+ # 复制应用代码
26
+ COPY . .
33
27
34
28
# 启动命令
35
29
CMD ["python" , "start_server.py" ]
You can’t perform that action at this time.
0 commit comments