# 使用官方 Python 3.10 基础镜像 FROM python:3.10-slim # 设置环境变量 ENV PYTHONDONTWRITEBYTECODE=1 ENV PYTHONUNBUFFERED=1 ENV DEBIAN_FRONTEND=noninteractive # 设置工作目录 WORKDIR /app # 安装系统依赖 # ffmpeg: 核心依赖,用于音频提取和视频合成 # libgomp1: faster-whisper (ctranslate2) 的依赖 RUN apt-get update && apt-get install -y --no-install-recommends \ ffmpeg \ libgomp1 \ && apt-get clean \ && rm -rf /var/lib/apt/lists/* # 复制依赖文件 COPY requirements.txt . # 安装 Python 依赖 RUN pip install --no-cache-dir -r requirements.txt # 复制项目文件 COPY . . # 预下载 Whisper 模型(可选,这里预下载 base 模型以加快首次运行速度) # 如果不需要预下载,可以注释掉下面这行 RUN python -c "from faster_whisper import WhisperModel; WhisperModel('base', device='cpu', compute_type='int8', download_root='/app/models')" # 暴露 Streamlit 端口 EXPOSE 8501 # 启动命令 CMD ["streamlit", "run", "app.py", "--server.port=8501", "--server.address=0.0.0.0"]