跳至主要內容

Superheat CN 上的映像檔

Superheat CN 的範本映像檔放在阿里雲容器映像服務(ACR)上,GPU 主機從那裡拉取。本頁說明目錄中的映像檔放在哪裡、你自己填寫的映像檔參照會怎麼被拉取,以及如何讓你自己的映像檔在主機上拉得下來。

登錄庫​

superheat-cn-registry.cn-shanghai.cr.aliyuncs.com

範本用到的映像檔分布在這個登錄庫的兩個命名空間裡:

命名空間內容範例
superheat/Superheat 自己發布的映像檔superheat-cn-registry.cn-shanghai.cr.aliyuncs.com/superheat/base
mirror/目錄中用到的第三方映像檔superheat-cn-registry.cn-shanghai.cr.aliyuncs.com/mirror/open-webui-open-webui

下面列出的儲存庫都是公開的,允許匿名拉取。主機拉取時不需要憑證,使用它們的範本也不需要填寫私有登錄庫憑證。

superheat/ 儲存庫​

儲存庫ACR 上的標籤
superheat/basecuda-12.1、cuda-12.4、cuda-12.6、cuda-12.8、latest
superheat/pytorchcuda-12.1、cuda-12.4、cuda-12.6、cuda-12.8
superheat/axolotlcuda-12.4
superheat/comfyuicuda-12.4、cuda-12.8
superheat/a1111cuda-12.1
superheat/fooocuscuda-12.1
superheat/faster-whispercuda-12.6
superheat/kohyacuda-12.8

範本標籤為 [Automatic] 時,啟動時會在該儲存庫發布的標籤中,挑出所選機器的 CUDA 能執行的最新一個。基礎映像檔本身請見基礎映像檔。

mirror/ 儲存庫​

第三方映像檔的 ACR 參照是這樣得出的:去掉原登錄庫的主機,把剩下路徑中的 / 換成 -,放進 mirror/。例如 ghcr.io/open-webui/open-webui 會變成 mirror/open-webui-open-webui;Docker Hub 官方映像檔的路徑前面會先補上 library/。

映像檔同步只複製目錄中可以啟動的範本用到的映像檔,而且只複製每個範本釘選的那一個標籤——mirror/ 並不是上游儲存庫的完整副本。目前同步的第三方映像檔:

範本ACR 上的參照(省略登錄庫主機)標籤
TensorFlow (Jupyter)mirror/tensorflow-tensorflowlatest-gpu-jupyter
Data Science (Jupyter)mirror/jupyter-datascience-notebooklatest
Open WebUImirror/open-webui-open-webuimain
Text Embeddings Inferencemirror/huggingface-text-embeddings-inference1.5

vLLM (OpenAI API)、Ollama、InvokeAI 與 LLaMA-Factory 不再同步。它們的服務無法對每個請求都要求執行個體存取權杖,所以在做到之前被標記為即將推出,映像檔同步也會略過它們。已經在執行的執行個體不受影響。

目錄中的參照與你填寫的參照​

精選範本的映像檔參照在寫入範本目錄時就已經改寫成 ACR 參照。所以精選範本的卡片、詳細資料以及它們的副本顯示的都是 ACR 參照,主機也從 ACR 拉取。

你新增或編輯範本時填寫的映像檔參照會原樣拉取,不做任何改寫。寫 pytorch/pytorch,主機就會去 Docker Hub 拉取,而 Docker Hub 從中國大陸的主機無法連線,這次部署就會失敗。

所以要不就從精選範本建立副本再修改,要不就寫一個中國大陸主機拉得到的完整參照:上面列出的 ACR 參照,或你自己的中國大陸登錄庫。

中國大陸主機拉不到的登錄庫​

登錄庫從中國大陸的主機
Docker Hub,包括 pytorch/pytorch 這類不含登錄庫主機的短名稱無法連線
GHCR(ghcr.io)非常慢
quay.io、nvcr.io很慢或被封鎖

映像檔無法拉取的執行個體不會進入 running 狀態,執行個體日誌中會有拉取錯誤。請參閱日誌。

nvcr.io 範本顯示「即將推出」​

NVIDIA NGC(nvcr.io)的映像檔沒有同步到 ACR:NGC 映像檔的授權沒有明確允許再散布。因此目錄中來自 nvcr.io 的範本 —— 例如 Triton Inference Server 與 RAPIDS —— 在 Superheat CN 上都被標記為即將推出,在任何機器上都無法啟動。卡片上會顯示 即將推出 徽章,啟動 按鈕會停用,工具提示為 「執行功能將於後續版本推出。」;在詳細資料對話框中,同一個按鈕會寫著 即將推出。

這些範本仍然可以開啟檢視。請參閱「即將推出」是什麼意思。

ssh 與 jupyter 模式要用 ACR 上的映像檔​

在 ssh 與 jupyter 模式下,Superheat 會用基礎映像檔的進入點接管容器:啟動 sshd(jupyter 模式下還有 JupyterLab)與你的啟動時指令碼,並開放 SSH 連接埠。Superheat 依據映像檔參照決定是否接管。在 Superheat CN 上:

範本上的映像檔在 ssh / jupyter 模式下會怎樣
superheat-cn-registry.cn-shanghai.cr.aliyuncs.com/superheat/<儲存庫>Superheat 接管進入點,正常啟動
不含 ACR 主機的 superheat/base 等寫法部署失敗:Superheat CN 只接受 ACR 上的基礎映像檔
其他任何映像檔,包括你以基礎映像檔為底建置、推送到自己登錄庫的映像檔執行映像檔自己的進入點。Superheat 不會接管它,也不會自動開放 SSH 連接埠

對於最後一類映像檔,請使用 args 模式,並在範本上宣告它提供服務的連接埠。請參閱啟動模式與連接埠。

使用你自己的映像檔​

  1. 把映像檔推送到一個中國大陸的登錄庫,例如你自己的阿里雲 ACR 執行個體。
  2. 在範本的 映像檔 欄位填寫含登錄庫主機的完整參照,例如 acme-registry.cn-shanghai.cr.aliyuncs.com/acme/trainer。登錄庫主機就是從這個參照推導出來的。
  3. 在 標籤 欄位釘選一個實際存在的標籤。[Automatic] 只有對 superheat/ 底下的映像檔才會解析成 cuda-<minor> 標籤,對其他映像檔則視為 latest。
  4. 如果儲存庫是私有的,請在範本的 私有登錄庫 區段填寫使用者名稱與存取權杖,例如你的 ACR 執行個體的存取憑證。請參閱私有登錄庫。
  5. 模式 選 Args,並宣告映像檔提供服務的連接埠。原因請見上一節。

需要基礎映像檔裡的工具時,可以 FROM ACR 上的基礎映像檔來建置,它允許匿名拉取。請參閱基礎映像檔。

相關內容​