translator / Dockerfile
felix1968839's picture
add Dockerfile
b73634a verified
# 使用官方 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"]