mmartial/ComfyUI-Nvidia-Docker
ComfyUI for NVIDIA GPU in a Docker container with user configurable uid/gid
解決的問題
本專案提供一個基於 Docker 的環境,用於執行 ComfyUI(Stable Diffusion WebUI),特別針對 NVIDIA GPU 進行優化。它透過將整個設定(包含 CUDA、CuDNN 和 Python 虛擬環境)封裝在容器中,解決了複雜的手動安裝、主機作業系統污染與相依性衝突的問題。
如何運作
本專案使用官方 NVIDIA CUDA 容器作為基礎。它將安裝分為兩個主要目錄:run 資料夾(包含虛擬環境與 ComfyUI 原始碼)和 basedir 資料夾(包含使用者檔案、模型與自訂節點)。此架構允許獨立管理環境,同時保留使用者資料。它支援多種 Ubuntu 與 CUDA 版本組合,確保與不同 NVIDIA 硬體的相容性,從較舊的 GTX 10xx 系列到最新的 Blackwell(RTX 50xx)GPU 均可支援。它還整合 ComfyUI-Manager 以簡化更新,並允許使用者映射自己的 UID/GID,以在主機上維持正確的檔案權限。
適用對象
希望使用 Docker 或 Podman 在 NVIDIA GPU 上執行 ComfyUI 的使用者,包括透過 WSL2 使用 Windows、Linux 或 Unraid 的使用者,偏好程序隔離與簡化安裝流程的人。
主要亮點
- 廣泛的硬體支援:為不同 CUDA 版本提供專用容器標籤,特別支援 RTX 50xx(Blackwell)與 GTX 10xx GPU。
- 權限管理:支援自訂 UID/GID 映射,確保容器使用者與主機使用者權限一致。
- 彈性安裝:可選支援
uv以實現更快的 Python 套件安裝,以及TORCH_LOCK以防止更新導致的破壞。 - 可客製化:支援執行自訂 bash 腳本(
user_script.bash)並透過環境變數傳遞額外命令列參數。 - 預建鏡像:DockerHub 上提供即用型鏡像,包含 Unraid 相容版本。
相關
- 專案
- 專案
- 專案
- 專案
- 專案