keyframe / Dockerfile
zijian2022's picture
Update Dockerfile
ab24e1a verified
FROM python:3.11-slim
# 安装系统依赖(包括 wget, ffmpeg, OpenCV 运行所需依赖)
RUN apt-get update && apt-get install -y \
libglib2.0-0 \
libgl1-mesa-glx \
libsm6 \
libxext6 \
wget \
curl \
xz-utils \
&& rm -rf /var/lib/apt/lists/*
RUN wget https://johnvansickle.com/ffmpeg/releases/ffmpeg-release-amd64-static.tar.xz \
&& tar -xJf ffmpeg-release-amd64-static.tar.xz \
&& cp ffmpeg-*-amd64-static/ffmpeg /usr/local/bin/ \
&& cp ffmpeg-*-amd64-static/ffprobe /usr/local/bin/ \
&& rm -rf ffmpeg-release-amd64-static.tar.xz ffmpeg-*-amd64-static
# 下载并解压 OpenVSCode Server
RUN wget https://github.com/gitpod-io/openvscode-server/releases/download/openvscode-server-v1.101.2/openvscode-server-v1.101.2-linux-x64.tar.gz -O /tmp/openvscode-server.tar.gz \
&& tar -xzf /tmp/openvscode-server.tar.gz -C /opt \
&& rm /tmp/openvscode-server.tar.gz \
&& mv /opt/openvscode-server-v1.101.2-linux-x64 /opt/openvscode-server \
&& chown -R 1000:1000 /opt/openvscode-server
# 设置工作目录
WORKDIR /app
RUN mkdir -p /app/downloaded_videos && chmod 777 /app/downloaded_videos
# 将当前目录下的所有文件复制到容器中
COPY . /app
# 安装 Python 依赖
RUN pip install --no-cache-dir -r requirements.txt
# 设置环境变量,指定容器监听的端口
ENV PORT=7860
ENV HOST=0.0.0.0
# 启动 Dash 应用(你也可以使用 gunicorn 等其他方式)
CMD ["python", "app.py"]