AIstudioProxyAPI / Dockerfile
hins111's picture
Update Dockerfile
8c1e978 verified
# 1. 基础镜像:使用一个现代、轻量的 Python 环境
FROM python:3.11-slim
ENV PYTHONUNBUFFERED=1
# 2. 设置工作目录
WORKDIR /app
# 3. 安装系统依赖:xvfb 用于虚拟显示,这对于在服务器上运行浏览器至关重要
RUN apt-get update && apt-get install -y --no-install-recommends \
xvfb \
&& rm -rf /var/lib/apt/lists/*
# 4. 复制整个项目代码到容器中
COPY . .
# 5. 安装所有 Python 依赖
# - 使用引号确保 camoufox[geoip] 被正确解析
# - --no-cache-dir 减小镜像体积
RUN pip install --no-cache-dir -U "camoufox[geoip]"
RUN pip install --no-cache-dir -r requirements.txt
# 6. 安装 Playwright 运行所需的系统级依赖
# 这个命令会由 Playwright 自动安装所有必需的库
RUN playwright install-deps firefox
# 7. 下载 Camoufox 修改版的 Firefox 浏览器
RUN camoufox fetch
# 8. 暴露应用程序端口(根据项目文档,默认为 2048)
EXPOSE 2048
# 9. 定义容器启动时执行的命令
# --host 0.0.0.0 是在 Docker 中运行网络服务所必需的
# --virtual-display 使用我们安装的 xvfb
# --headless 在没有图形界面的服务器上运行
CMD ["python", "launch_camoufox.py", "--headless", "--server-port", "2048"]