首頁

目前文章總數:229 篇

  

最後更新:2026年 04月 25日

0028. 2026 最新|RTX 5070 + Docker + ComfyUI 完整安裝教學(Windows WSL2_)

日期:2026年 04月 25日

標籤: Linux Ubuntu Docker Docker-Compose Container Stable Diffusion ComfyUI WSL 2

摘要:資訊筆記


應用所需:1. 已安裝 Windows 的 Docker Desktop (Use WSL 2 instead of Hyper-V)
     2. 已安裝 Hyper-V
     3. 顯示卡使用 RTX 5050 以上 (本篇 RTX 5070)
     4. Windows 10 以上作業系統
解決問題:如何在 Windows 作業系統 安裝 ComfyUI(AI生圖片) + 容器可以使用電腦顯卡運算
基本介紹:本篇分為 5 大部分。
第一部分:介紹 & 實作目標
第二部分:環境說明
第三部分:前置準備
第四部分:ComfyUI 容器啟動
第五部分:模型安裝與使用






第一部分:介紹 & 實作目標

Step 1:為什麼選擇容器化(環境隔離的重要性)

AI 圖像生成工具的 Python 依賴地獄是出了名的麻煩。
並且基於 Stable Diffusion 模型的 Web-UI 套件如 : ComfyUI、AUTOMATIC1111、InvokeAI 各自對 PyTorch、CUDA、xformers 的版本要求不同

直接裝在宿主機很容易互相踩壞。有了容器化可以達到以下優點:

1. 環境完全隔離: 每個工具有自己的 CUDA/PyTorch 版本,互不干擾
2. 可重現性: 換電腦或重裝系統只需重新 pull image,不用重走一遍安裝流程
3. 切換方便: 想測試版本的 Web-UI 套件 (ComfyUI、AUTOMATIC1111、InvokeAI),不用因為 Python 依賴差異造成無法啟動,各自獨立
4. 避免污染系統 Python: 不需要在 Windows 宿主機或 WSL 裡裝一堆套件


容器化實現了一台機器可以多種不同的 AI 應用程式同時使用,並且彼此間不會相互影響。

Step 2:RTX 5070 Blackwell 的特殊挑戰

RTX 5070 屬於 NVIDIA Blackwell 架構(sm_100 / GB205),屬於較新的版本,相較前幾代有幾個坑:
嚴格來說 2025 年以前的文章大多偏向 CUDA 12.1 的 GPU 模型配置,本篇是針對支持 Blackwell 的顯示卡 (CUDA 12.8+),運行使用 ComfyUI

1. CUDA 版本門檻: Blackwell 架構最低需要 CUDA 12.8+,市面上很多舊 image 使用 CUDA 12.1 甚至更舊,直接跑不起來
2. PyTorch 支援較新: 需要 PyTorch 2.7+ 才有完整 Blackwell 支援,舊版會 fallback 到 CPU 或直接報錯
3. 驅動版本要求高: Windows 驅動需要 572.xx 以上才能在 WSL2 內正常透傳 GPU
4. 網路上的教學多半過時: 大多數容器化教學是針對 Ampere(RTX 30xx)或 Ada(RTX 40xx)寫的,直接照做會踩坑


補充: CUDA 全名 Compute Unified Device Architecture(統一計算設備架構)
      由 NVIDIA 開發的平行運算平台與程式設計模型,讓開發者能利用 NVIDIA GPU 進行通用運算



Step 3:ComfyUI 介紹

核心概念:節點式工作流 (EX: n8n 就是一種節點式工作流)

ComfyUI 是一個 Stable Diffusion 的操作介面,但它跟其他介面最大的不同在於——它把 AI 生圖的每一個步驟都拆成獨立的「節點(Node)」,
你用連線把這些節點串起來,形成一條視覺化的工作流(Workflow)。

[載入模型] → [輸入提示詞] → [設定取樣器] → [解碼圖像] → [輸出]



ComfyUI 有以下優勢特性:

1. 每步驟都獨立: 隨時在任何中間步驟插入額外處理或者移除調適
2. 新技術支援快: Flux、SD3… 等新架構出來,ComfyUI 幾乎都是第一個有可用 workflow 的介面,因為節點式工作流很容易接入新模型,不需要等介面開發者包裝成按鈕。
3. 工作流可以分享與重現: 同 n8n 可以下載 Workflow 成 .json 檔案,然後提供他人匯入,並且有大量的 Template
4. 效能依據於節點: ComfyUI 只執行你工作流裡實際用到的節點,不會載入你沒用到的功能
5. 可以做批次自動化: 節點設計天生適合做自動化,並且可以與 n8n 做自動化工作流




Step 4:考慮使用 ComfyUI 的情況

以下是適合用 ComfyUI 的情境,若有符合可以考慮使用:

1. 想跑最新模型(Flux、SD3…): 不想等其他介面更新
2. 實現複雜工作流: 例如先生圖、再 ControlNet 修正構圖、再放大、再臉部修復
3. 精確控制參數: 例如分別對前景和背景用不同的 CFG scale
4. 硬體資源有效使用: 硬體資源有限,需要更精細地管理 VRAM 使用
5. 自動化 將工作流節點加入 Trigger 一環
6. 有成本的免費 有現成的 GPU 顯卡算力、硬體配備,想有效利用自己的電腦資源



不太適合 ComfyUI 的情境:

1. 剛入門 AI 或工作流設計: 不熟悉 Stable Diffusion 基本概念(潛空間、取樣器、CFG 等),直接看節點會很茫然
2. 非長期使用: ComfyUI 學習曲線較高,功能繁雜,若不想花太多時間成本投入,AUTOMATIC1111 是更好的選擇


總結使用情況:

ComfyUI 是給想搞清楚 AI 生圖底層在做什麼、或是需要打造精細自動化流程的人用的工具。
學習曲線較陡,但一旦上手,彈性和效能都是其他介面難以匹敵的。



補充資訊:

補充:對於 RTX 50XX 系列,有 Blackwell 架構的顯卡用戶,
     還有一個實際的理由:新架構的 CUDA 支援和模型適配, **在 ComfyUI 社群裡幾乎是最快的** 



Step 5:本篇安裝軟體架構

完整操作安裝,在自己的電腦將會有以下結構, 目標 : 容器化安裝 ComfyUI(AI生圖片) + 容器可以使用電腦顯卡運算

Windows 10/11(你的主機)
    └── WSL2(輕量級 Linux 虛擬機,由 Windows 管理)
            └── Ubuntu(Linux 發行版,跑在 WSL2 裡)
                    └── Docker(跑在 Ubuntu 裡)
                            └── ComfyUI 容器(完全隔離 & 最終目標)





第二部分:硬體規格

Step 1:硬體規格

本篇能順利安裝並且執行 GPU 生成 AI圖片,使用以下硬體規格,提供參考:

項目 規格
GPU 名稱 NVIDIA GeForce RTX 5070
CPU Intel(R) Core(TM) i7-8700 CPU @ 3.20GHz,3192 Mhz,6 個核心,12 個邏輯處理器
RAM 48 GB
OS Microsoft Windows 10 專業版


補充: RTX 5070 的 12GB VRAM 在跑 SDXL 或 Flux 模型時算是剛好夠用,但執行如 ControlNet 組合時記憶體耗能較大,這時可以考慮開啟 tiled VAE 避免 Memory Crash

Step 2:軟體版本(Docker Desktop、WSL2、驅動版本)

本篇能順利安裝並且執行 GPU 生成 AI圖片,使用到的軟體與對應版本,提供參考:

軟體 版本
Windows 10 專業版 10.0.19045
NVIDIA Driver 5.95.97 ※2026年4月版本
CUDA(WSL 透傳) 12.8
WSL2 版本 2.6.3.0
WSL2 核心版本 6.6.87.2-1
Docker Desktop 版本 4.30.0 (149282)
Docker 版本 26.1.1
Ubuntu(WSL) 22.04
ComfyUI Image mmartial/comfyui-nvidia-docker:ubuntu24_cuda12.8-latest



補充資訊:

WSL2 裡面不需要另外安裝 CUDA Toolkit,NVIDIA 驅動會透過 /usr/lib/wsl/lib 自動透傳,裝了反而可能衝突。





第三部分:前置準備

Step 1:檢查顯卡已就緒

開啟 CMD 或 Power Shell 輸入以下指令檢查是否有顯卡

nvida-smi




Step 2:檢查 Docker Desktop 與 WSL

開啟 CMD 或 Power Shell 輸入以下指令檢查是否有安裝 Docker Desktop,目前已有安裝 docker,尚缺 WSL

wsl --list --v




Step 3:安裝 Docker Desktop

若無安裝可參考此篇:0080. .NET Aspire 必備容器化環境:Windows 上的 OCI 搭建說明中的 Docker Desktop 安裝說明

Step 4:安裝 WSL2 + Ubuntu

若已安裝,可以先執行以下指令先更新 wsl

wsl --update


若無安裝 WSL 2,請輸入以下指令進行安裝:

wsl --install
wsl --install -d Ubuntu




Step 5:安裝 WSL2 + Ubuntu - 安裝完成

首次安裝完成 WSL2 + Ubuntu 需要設定 Linux 的帳號密碼


Step 6:開啟 Docker Desktop 的 WSL2 整合 - 進入設定

開啟 Docker Desktop -> 進入右上角設定




Step 7:開啟 Docker Desktop 的 WSL2 整合 - 設定啟用 WSL2

左側的 Resources -> WSL integration
若無安裝 WSL2 ,這時會出現錯誤: You don’t have any WSL2 …


若正確安裝後,會有選項 Enable integration with additional distros:
這裡打勾,並且使用 Ubuntu
※常見漏掉的步驟:Ubuntu 需要手動勾選,否則在 Ubuntu 裡下 docker 指令會找不到。


Step 8:安裝 NVIDIA Container Toolkit - 開啟 WSL

工作列 -> WSL -> 開啟


Step 9:安裝 NVIDIA Container Toolkit - 安裝

通常容器是不能使用顯示卡 GPU,因此我們需要安裝 NVIDIA Container Toolkit

curl -fsSL https://nvidia.github.io/libnvidia-container/gpgkey | sudo gpg --dearmor -o /usr/share/keyrings/nvidia-container-toolkit-keyring.gpg \
  && curl -s -L https://nvidia.github.io/libnvidia-container/stable/deb/nvidia-container-toolkit.list | \
    sed 's#deb https://#deb [signed-by=/usr/share/keyrings/nvidia-container-toolkit-keyring.gpg] https://#g' | \
    sudo tee /etc/apt/sources.list.d/nvidia-container-toolkit.list




Step 10:設定 Docker Engine 加入 nvidia runtime

回到 Docker Desktop 的設定 -> 選擇 Docker Engine
補上以下這段,然後 重啟 Docker Desktop

  "runtimes": {
    "nvidia": {
      "path": "nvidia-container-runtime",
      "runtimeArgs": []
    }
  }


然後回到 WSL 指令列,運行 runtime 並且重啟 Docker

sudo nvidia-ctk runtime configure --runtime=docker
sudo systemctl restart docker  # 若在 WSL 內直接跑 Docker daemon




Step 11:驗證 nvidia runtime 是否正常

繼續 WSL 指令列,輸入以下

docker run --rm --gpus all nvidia/cuda:12.8.0-base-ubuntu22.04 nvidia-smi


若成功可以看到 GPU 的資訊,表示容器可以正常存取顯示卡了




第四部分:ComfyUI 容器啟動

Step 1:安裝 ComfyUI - 建立目錄

開啟 WSL 指令列,輸入以下:
目的是建立 comfyui 的目錄

mkdir -p ~/comfyui/{run, basedir}
cd ~/comfyui





Windows 的檔案總控輸入以下 :

\\wsl.localhost\Ubuntu\home\[您的帳號]\comfyui\basedir\models\


可以看到之後 ComfyUI 的存放目錄位置,便於後續 Stable Diffusion 模型存放位置


Step 2:安裝 ComfyUI - 執行安裝

開啟 WSL 指令列,輸入以下:
目的是建立 comfyui 的目錄 回到 WSL ,繼續輸入以下指令,我們會建立支持 RTX 5070 顯示卡的 cuda 12.8 版本的 comfyUI 容器
並且容器使用的 Port 為 8188

# 安裝顯卡容器
cd ~/comfyui && docker run -it \
  --runtime nvidia \
  --gpus all \
  -v "$(pwd)/run:/comfy/mnt" \
  -v "$(pwd)/basedir:/basedir" \
  -v /usr/lib/wsl:/usr/lib/wsl \
  -e LD_LIBRARY_PATH=/usr/lib/wsl/lib \
  -e WANTED_UID=$(id -u) \
  -e WANTED_GID=$(id -g) \
  -e BASE_DIRECTORY=/basedir \
  -e SECURITY_LEVEL=normal \
  -p 127.0.0.1:8188:8188 \
  --name comfyui-nvidia \
  mmartial/comfyui-nvidia-docker:ubuntu24_cuda12.8-latest




Step 3:啟動 ComfyUI

在瀏覽器輸入以下連結位置,可以訪問自己機器上的 ComfyUI 容器

http://127.0.0.1:8188






第五部分:模型安裝與使用

Step 1:快速上手 - 使用模板

接著左側選擇模板 (Template)


Step 2:選擇自己喜好的類型

可以透過輸入框選擇自己喜好的模型,這邊為了展示,選擇 動漫


Step 3:首次執行 - 安裝模型

接著選擇 運行 會出現缺少模型,這是正常的,因為模板出現的只是節點流式工作流
選擇 查看錯誤

這個 Template 需要 3 種模型,依序下載




Step 4:搬移模型

下載完成後,模型要放到正確的 ComfyUI 容器掛載的位置
開啟 Windows 檔案總管,輸入以下

\\wsl.localhost\Ubuntu\home\cap8825\comfyui\basedir\models


然後跳轉到 ComfyUI 模型存放目錄位置,將這個 Template 下載的 3 個模型放入對應資料夾


Step 5:模型對應資料夾資訊

模型的對應資訊要回到剛剛使用的 Template 的第 1 個節點流 (Markdown Note),拉到中間的地方會看到 Model Storage Location 資訊

📂 ComfyUI/
├── 📂 models/
│   ├── 📂 text_encoders/
│   │   └── qwen_3_06b_base.safetensors
│   ├── 📂 vae/
│   │   └── qwen_image_vae.safetensors
│   └── 📂 diffusion_models/
│       └── anima-preview2.safetensors


然後跳轉到 ComfyUI 模型存放目錄位置,將這個 Template 下載的 3 個模型放入對應資料夾


Step 6:再次執行模板

再次執行,會看到工作列出現使用模型的資訊

全部:67%
K採樣器:13%




Step 7:成功 GPU 生圖片

點擊 *檢視


可以看到大圖,並且可以下載


Step 8:調整 Prompt

要調整圖片,可以觀察到這個模板的 Step3 - Prompt ,有預設的提示詞


將提示詞改成自己想要的就可以生成,下面是舉利用: 森林系(療癒系)

masterpiece, best quality, score_7, safe, anime style, lush forest scenery, tall ancient trees with dense green foliage, 
soft sunlight filtering through the leaves creating god rays, 
moss-covered ground and rocks, small glowing particles floating in the air, 
a gentle stream flowing through the forest, highly detailed textures, 
soft lighting, calm and magical atmosphere, rich greens and natural tones


輸出結果如下,快速 ComfyUI 上手生成圖片 (這個模板是動漫風格的模型,因此會出現動漫風森林)