😊
UniRig簡単起動docker-compose
UniRigを起動させるdocker-composeです
- 作業用のディレクトリを用意してください
- Dockerfile,docker-compose.yml,config.pyをコピペして貼り付けてください
- volumesに認識させたいモデルファイルを設定してください
ex: - ./model.glb:/tmp/model.glb - /tmp/model.glbの部分を上で設定したpathにしてください
-
docker-compose upでresultsディレクトリに出力されます
- uvを使っていますが、--no-build-isolationを使用しているためuvのメリットは半減していますが、pythonのversionを3.11にしたいという用途がメインなので問題ありません
- Segmentation faultが出ますがwaitの部分なのでそのまま動きました
./launch/inference/extract.sh: line 58: 14 Segmentation fault (core dumped)
Dockerfile
FROM nvidia/cuda:12.6.3-cudnn-devel-ubuntu22.04
RUN apt-get update && DEBIAN_FRONTEND=noninteractive apt-get install -y \
git \
wget \
curl ca-certificates \
xorg \
&& apt-get clean \
&& rm -rf /var/lib/apt/lists/*
ADD https://astral.sh/uv/install.sh /uv-installer.sh
RUN sh /uv-installer.sh && rm /uv-installer.sh
ENV PATH="/root/.local/bin/:$PATH"
RUN git clone https://github.com/VAST-AI-Research/UniRig.git /UniRig
WORKDIR /UniRig
RUN uv init -p 3.11.6
RUN uv venv --python 3.11.6
RUN uv add torch==2.7.0 torchvision --no-build-isolation
RUN uv add setuptools --no-build-isolation
RUN uv add -r requirements.txt --no-build-isolation
RUN uv add hatchling editables wheel --no-build-isolation
RUN uv add spconv-cu126 --no-build-isolation
RUN uv add torch_scatter torch_cluster -f https://data.pyg.org/whl/torch-2.7.0+cu126.html --no-cache-dir --no-build-isolation
RUN uv add numpy==1.26.4 --no-build-isolation
RUN uv add pip --no-build-isolation
RUN build_deps="curl" && \
apt-get update && \
DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends ${build_deps} ca-certificates && \
curl -s https://packagecloud.io/install/repositories/github/git-lfs/script.deb.sh | bash && \
DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends git-lfs && \
git lfs install && \
DEBIAN_FRONTEND=noninteractive apt-get purge -y --auto-remove ${build_deps} && \
rm -r /var/lib/apt/lists/*
RUN git lfs pull
docker-compose.yml
services:
unirig:
build:
context: .
dockerfile: Dockerfile
entrypoint:
- /bin/bash
- -c
- . .venv/bin/activate && bash launch/inference/generate_skeleton.sh --input /tmp/model.glb --output /results/model.fbx && bash launch/inference/merge.sh --source /results/model.fbx --target /tmp/model.glb --output /results/model.glb
volumes:
- hugggingface:/hugggingface
- ./results:/results
- ./model.glb:/tmp/model.glb
environment:
- HF_HOME=/hugggingface
deploy:
resources:
reservations:
devices:
- driver: nvidia
count: 1
capabilities: [gpu]
volumes:
hugggingface:
Discussion