FROM python:3.9-slim # 避免交互式提示 ENV DEBIAN_FRONTEND=noninteractive # 安装系统依赖 RUN apt-get update && apt-get install -y \ wget \ gnupg \ apt-transport-https \ ca-certificates \ unzip \ && rm -rf /var/lib/apt/lists/* # 安装 Chrome RUN wget -q -O - https://dl.google.com/linux/linux_signing_key.pub | apt-key add - \ && echo "deb [arch=amd64] http://dl.google.com/linux/chrome/deb/ stable main" >> /etc/apt/sources.list.d/google-chrome.list \ && apt-get update \ && apt-get install -y \ google-chrome-stable \ && rm -rf /var/lib/apt/lists/* # 安装特定版本的 ChromeDriver RUN wget -q "https://chromedriver.storage.googleapis.com/114.0.5735.90/chromedriver_linux64.zip" -O /tmp/chromedriver.zip \ && unzip /tmp/chromedriver.zip -d /usr/local/bin/ \ && rm /tmp/chromedriver.zip \ && chmod +x /usr/local/bin/chromedriver # 设置工作目录 WORKDIR /app # 安装 Python 依赖 COPY requirements.txt . RUN pip install flask selenium==4.9.1 requests webdriver_manager # 复制应用文件 COPY app.py . COPY nb4x.py . # 暴露端口 EXPOSE 7860 # 创建启动脚本 RUN echo '#!/bin/bash\npython app.py & python nb4x.py' > start.sh && \ chmod +x start.sh # 启动命令 CMD ["./start.sh"]