# 使用官方 Python 镜像作为基础镜像 FROM python:3.9-slim # 设置工作目录 WORKDIR /app # 安装系统依赖 RUN apt-get update && apt-get install -y \ libgl1-mesa-glx \ libglib2.0-0 \ gcc \ g++ \ python3-tk \ tk-dev \ ffmpeg \ fonts-liberation \ && rm -rf /var/lib/apt/lists/* # 复制项目文件到容器中 COPY . /app # 升级 pip RUN pip install --upgrade pip # 安装 Python 依赖 RUN pip install --no-cache-dir -r requirements.txt # 设置环境变量 ENV PYTHONUNBUFFERED=1 ENV LANG=C.UTF-8 ENV LC_ALL=C.UTF-8 ENV MPLCONFIGDIR=/tmp/matplotlib # 创建必要的目录并设置权限 RUN mkdir -p /.fonts /.config /app/models && \ chmod -R 777 /.fonts /.config /app/models RUN mkdir -p /app/flagged && chmod 777 /app/flagged # 创建非 root 用户 RUN useradd -m appuser USER appuser # 运行应用 CMD ["python", "app.py"]