37 lines
779 B
Docker
37 lines
779 B
Docker
|
# 基础镜像选择
|
||
|
FROM python:3.10-slim
|
||
|
|
||
|
# 设置工作目录
|
||
|
WORKDIR /app
|
||
|
|
||
|
# 安装系统依赖
|
||
|
RUN apt-get update && \
|
||
|
apt-get install -y --no-install-recommends \
|
||
|
build-essential \
|
||
|
ffmpeg \
|
||
|
&& apt-get clean \
|
||
|
&& rm -rf /var/lib/apt/lists/*
|
||
|
|
||
|
# 拷贝依赖文件并安装
|
||
|
COPY requirements.txt .
|
||
|
RUN pip install --no-cache-dir -r requirements.txt
|
||
|
|
||
|
# 拷贝应用文件
|
||
|
COPY . .
|
||
|
|
||
|
# 创建必要的目录
|
||
|
RUN mkdir -p uploads output /mounted_summaries
|
||
|
|
||
|
# 设置环境变量
|
||
|
ENV PYTHONUNBUFFERED=1
|
||
|
ENV GUNICORN_CMD_ARGS="--config=gunicorn_config.py"
|
||
|
ENV PORT=5000
|
||
|
|
||
|
# 添加执行权限
|
||
|
RUN chmod +x /app/entrypoint.sh
|
||
|
|
||
|
# 暴露端口
|
||
|
EXPOSE 5000
|
||
|
|
||
|
# 使用entrypoint.sh作为启动命令
|
||
|
ENTRYPOINT ["/app/entrypoint.sh"]
|