TrueNAS Scale 部署

從 TrueNAS Scale 24.10+(Electric Eel)起,SCALE-Apps 已經從 k3s 切換到 Docker,雲瞰透過 Custom App YAML 即可部署。僅適用於 24.10+,舊版 k3s 路線請先升級 TrueNAS。

1. 適用機型 & 推薦變體

硬體推薦變體備註
Intel CPU + 內顯openvinoTrueNAS 核心預設已內建 i915 驅動程式
NVIDIA GPU(GTX/RTX)cuda 或 trtApps → Settings → GPU 可以看到 host 的 GPU 清單
純 CPUcpu推理速度降一級,但功能不變

TrueNAS Scale 24.10 起才支援 Docker

24.04 及之前的版本是 k3s/Kubernetes,本文件的 Custom App YAML 走的是 Docker backend,僅適用於 24.10+。升級前請依照 iX-systems 官方遷移指南做好備份。

2. 準備工作

  1. 1

    升級 TrueNAS 到 24.10+

    系統設定 → 更新 → 選擇 24.10-Electric-Eel train,等待遷移完成

  2. 2

    建立 ZFS dataset

    Datasets → 選一個儲存池 → 新建 yunkan-data dataset,路徑形如 /mnt/pool0/apps/yunkan/data;後面 compose 會把這裡掛載到 /app/data

  3. 3

    查看 GPU

    Apps → Settings → GPU 查看 host 上偵測到的 iGPU / NVIDIA,確認要用的變體

3. 取得 compose 檔案

TrueNAS 建議用 Custom App YAML 部署(走 UI),也可以直接用 SSH 執行 docker compose。三種取得方式任選其一:

瀏覽器下載 compose.yml

TrueNAS Scale 24.10+ 專用 · openvino 變體 · 注意要修改 dataset 路徑

或以 SSH 使用 wget(記得修改 dataset 路徑):

bash
ssh root@<TrueNAS IP>
cd /mnt/pool0/apps/yunkan
wget https://yun-kan.com/compose/truenas.yml -O compose.yml
# ★ 檔案裡的 /mnt/pool0/apps/yunkan/data 改成你真實的 dataset 路徑 ★

Custom App YAML 方式(推薦)

TrueNAS UI → Apps → Discover Apps → 右上角 Custom App → App Name 填 yunkan → 在 Workloads/YAML 編輯器貼上下面的最小版本(注意把 /mnt/pool0/apps/yunkan/data 換成你的 dataset 路徑)。
yaml
name: yunkan

services:
  yunkan:
    image: registry.cn-hangzhou.aliyuncs.com/yunkan/yunkan-openvino:latest
    container_name: yunkan
    restart: always
    network_mode: host
    devices:
      - /dev/dri:/dev/dri
    volumes:
      - /mnt/pool0/apps/yunkan/data:/app/data
      - /mnt/pool0/apps/yunkan/recordings:/app/data/recordings
      - /etc/machine-id:/etc/machine-id:ro
      - /sys/class/dmi/id/product_uuid:/sys/class/dmi/id/product_uuid:ro
      - /var/run/docker.sock:/var/run/docker.sock
    environment:
      - TZ=Asia/Shanghai
      - SKYVIEW_SELF_CONTAINER_NAME=yunkan
compose.yml(最小版,貼上前先替換 dataset 路徑)

4. 啟動雲瞰

方式 A · Custom App:在 Apps UI 裡點 Save → Install,等狀態變成 Running。

方式 B · SSH:

bash
cd /mnt/pool0/apps/yunkan
docker compose up -d
docker logs -f yunkan

啟動後在瀏覽器打開 http://<TrueNAS IP>:23406/(注意 TrueNAS UI 在 80/443,不會衝突)進入 Setup 精靈。

5. 連接埠和防火牆

TrueNAS Scale Web UI 佔用 80/443,雲瞰的 23406 系列不會衝突。Scale 預設沒有額外的防火牆,SCALE-Apps 走 host network 直接綁定連接埠。

6. 常見問題

升級 24.04 → 24.10 後 App 不見了

k3s → Docker 遷移可能會讓舊的 Custom App 消失,需要依照本文件重新部署(資料卷仍然在 ZFS dataset 裡,重建容器即可復原)。

/dev/dri 在 TrueNAS Custom App YAML 裡報錯

確認 TrueNAS UI → Apps → Settings → GPU 已經勾選 Allow Containers to Access。

升級:建議透過 Apps UI 升級(Edit → 修改 image tag → Save);或用 SSH 執行 docker compose pull && docker compose up -d。

這篇文件有幫助嗎?