jacky3102 commited on
Commit
be3206c
·
verified ·
1 Parent(s): faf898e

Dockerfile: use ghcr.io/blender/blender:4.2 base

Browse files
Files changed (1) hide show
  1. Dockerfile +3 -18
Dockerfile CHANGED
@@ -1,23 +1,9 @@
1
- FROM python:3.11
 
2
 
3
  ENV DEBIAN_FRONTEND=noninteractive
4
  ENV PIP_NO_CACHE_DIR=1
5
 
6
- # 系统依赖(python:3.11 基于 Debian bookworm,源完整)
7
- RUN apt-get update && apt-get install -y --no-install-recommends \
8
- wget xz-utils ca-certificates \
9
- libxi6 libxext6 libxrender1 libxfixes3 libxxf86vm1 \
10
- libxkbcommon0 libsm6 libgl1 libglu1-mesa \
11
- && rm -rf /var/lib/apt/lists/*
12
-
13
- # Blender 4.2 LTS
14
- ARG BLENDER_VERSION=4.2.9
15
- RUN wget -q "https://download.blender.org/release/Blender4.2/blender-${BLENDER_VERSION}-linux-x64.tar.xz" -O /tmp/blender.tar.xz \
16
- && tar -xf /tmp/blender.tar.xz -C /opt \
17
- && mv /opt/blender-${BLENDER_VERSION}-linux-x64 /opt/blender \
18
- && rm /tmp/blender.tar.xz
19
- ENV PATH="/opt/blender:${PATH}"
20
-
21
  # 非 root 用户
22
  RUN useradd -m -u 1000 appuser
23
  WORKDIR /app
@@ -29,11 +15,10 @@ COPY app.py worker.py ./
29
 
30
  RUN mkdir -p /data/jobs
31
  ENV JOB_DIR=/data/jobs
32
- ENV BLENDER_BIN=/opt/blender/blender
33
  ENV JOB_TIMEOUT_SECONDS=180
34
 
35
  EXPOSE 7860
36
 
37
- # 运行时修权限(避免构建期 chown 失败)
38
  CMD mkdir -p /data/jobs && chown -R appuser:appuser /data /app 2>/dev/null || true \
39
  && exec uvicorn app:app --host 0.0.0.0 --port 7860
 
1
+ # 社区维护的 Blender 4.2 headless 镜像(基于 ubuntu:22.04,已含依赖)
2
+ FROM ghcr.io/blender/blender:4.2
3
 
4
  ENV DEBIAN_FRONTEND=noninteractive
5
  ENV PIP_NO_CACHE_DIR=1
6
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
7
  # 非 root 用户
8
  RUN useradd -m -u 1000 appuser
9
  WORKDIR /app
 
15
 
16
  RUN mkdir -p /data/jobs
17
  ENV JOB_DIR=/data/jobs
18
+ ENV BLENDER_BIN=/usr/bin/blender
19
  ENV JOB_TIMEOUT_SECONDS=180
20
 
21
  EXPOSE 7860
22
 
 
23
  CMD mkdir -p /data/jobs && chown -R appuser:appuser /data /app 2>/dev/null || true \
24
  && exec uvicorn app:app --host 0.0.0.0 --port 7860