61 lines
1.2 KiB
Docker
61 lines
1.2 KiB
Docker
FROM python:3.12-slim
|
|
|
|
# 安装系统依赖
|
|
RUN apt-get update && apt-get install -y \
|
|
nginx \
|
|
curl \
|
|
wget \
|
|
libglib2.0-0 \
|
|
libnss3 \
|
|
libnspr4 \
|
|
libatk1.0-0 \
|
|
libatk-bridge2.0-0 \
|
|
libcups2 \
|
|
libdrm2 \
|
|
libdbus-1-3 \
|
|
libxkbcommon0 \
|
|
libxcomposite1 \
|
|
libxdamage1 \
|
|
libxfixes3 \
|
|
libxrandr2 \
|
|
libgbm1 \
|
|
libasound2 \
|
|
libpango-1.0-0 \
|
|
libcairo2 \
|
|
libatspi2.0-0 \
|
|
fonts-liberation \
|
|
libnss3-tools \
|
|
xvfb \
|
|
&& rm -rf /var/lib/apt/lists/*
|
|
|
|
# 设置工作目录
|
|
WORKDIR /app
|
|
|
|
# 复制server文件
|
|
COPY ./server/* /app/server/
|
|
|
|
# 复制nginx配置文件
|
|
COPY ./nginx.conf /etc/nginx/nginx.conf
|
|
|
|
# 安装Python依赖
|
|
RUN pip install --no-cache-dir -r /app/server/requirements.txt
|
|
|
|
# 配置Playwright代理和安装Chromium
|
|
RUN playwright install chromium
|
|
|
|
# 创建下载目录和nginx运行所需目录
|
|
RUN mkdir -p /app/server/download /var/run/nginx
|
|
|
|
# 设置环境变量
|
|
ENV USER=admin
|
|
ENV PASSWORD=password
|
|
ENV SECRET_KEY='asd78yujncisa32r89'
|
|
|
|
# 设置卷
|
|
VOLUME ["/app/server/download"]
|
|
|
|
# 暴露端口
|
|
EXPOSE 80
|
|
|
|
# 启动命令
|
|
CMD service nginx start && cd /app/server && xvfb-run -a python3 api.py |