File size: 1,053 Bytes
faafc02
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
33817e4
faafc02
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
# 使用多阶段构建以减少最终镜像大小  
FROM node:18-alpine as frontend-builder  

# 安装git  
RUN apk add --no-cache git  

# 克隆代码库  
RUN git clone https://github.com/lanzhihong6/stock-scanner.git /app  

# 设置前端工作目录  
WORKDIR /app/frontend  

# 安装依赖并构建前端  
RUN npm ci && npm run build  

# 后端阶段  
FROM python:3.10-slim  

# 设置工作目录  
WORKDIR /app  

# 安装git和运行时依赖  
RUN apt-get update && apt-get install -y \
    git \
    libgl1-mesa-glx \
    ca-certificates \
    && rm -rf /var/lib/apt/lists/* 

# 克隆代码库  
RUN git clone https://github.com/lanzhihong6/stock-scanner.git /app  && \
    chmod -R 777 /app   && \
    chmod +x /app/web_server.py 
# 安装Python依赖  
RUN pip install --no-cache-dir -r requirements.txt  

# 从前端构建阶段复制生成的静态文件到后端的前端目录  
COPY --from=frontend-builder /app/frontend/dist /app/frontend/dist  

# 暴露端口  
EXPOSE 8888

# 启动命令  
CMD ["python", "web_server.py"]