diff --git a/infra/docker/worker.Dockerfile b/infra/docker/worker.Dockerfile index 4283c5d7c..e2f130d4a 100755 --- a/infra/docker/worker.Dockerfile +++ b/infra/docker/worker.Dockerfile @@ -28,6 +28,12 @@ RUN python -m venv /opt/venv \ && /opt/venv/bin/pip install --no-cache-dir -i https://mirrors.aliyun.com/pypi/simple/ --trusted-host mirrors.aliyun.com -r /tmp/requirements-base.txt \ && rm /tmp/requirements-base.txt +# ---- 依赖分层:Worker 专属大包(视频处理,变化极少)---- +COPY requirements-worker.txt /tmp/requirements-worker.txt + +RUN /opt/venv/bin/pip install --no-cache-dir -i https://mirrors.aliyun.com/pypi/simple/ --trusted-host mirrors.aliyun.com -r /tmp/requirements-worker.txt \ + && rm /tmp/requirements-worker.txt + # ---- 依赖分层:业务依赖(变化频繁)---- COPY requirements.txt /tmp/requirements.txt diff --git a/requirements-base.txt b/requirements-base.txt index 64b22cf16..f01d9a400 100755 --- a/requirements-base.txt +++ b/requirements-base.txt @@ -22,13 +22,6 @@ redis==5.2.0 # 任务队列 celery==5.4.0 -# 视频处理(大包,变化极少) -numpy>=1.24.0 -scipy>=1.10.0 -opencv-python-headless>=4.8.0 -Pillow==10.4.0 -ffmpeg-python==0.2.0 - # 对象存储 oss2==2.18.4 diff --git a/requirements-worker.txt b/requirements-worker.txt new file mode 100644 index 000000000..2a01cb870 --- /dev/null +++ b/requirements-worker.txt @@ -0,0 +1,17 @@ +# 小虾 SaaS - Worker 专属依赖(视频处理大包,仅 Worker 需要) +# 这些包体积大,API 服务不需要安装 + +# 数值计算 +numpy>=1.24.0 + +# 科学计算 +scipy>=1.10.0 + +# 计算机视觉(视频去重、帧处理) +opencv-python-headless>=4.8.0 + +# 图像处理 +Pillow==10.4.0 + +# FFmpeg Python 绑定 +ffmpeg-python==0.2.0