選項
首頁首頁 Skill 開發營運和 CI/CD tao-run-on-local-docker

tao-run-on-local-docker

NVIDIA/skills NVIDIA/skills

在支援 NVIDIA GPU 的本地或遠端 Docker 守護程式上,以 Docker 容器形式執行 TAO SDK 工作,其中包含預檢與憑證處理。

...展開全部
0
更新時間 2026-09-25

本地 Docker

一種單節點執行平台,可在 Docker 守護程式上以命名 Docker 容器的形式執行 TAO 工作。 該守護程式可位於代理主機上,或透過 DOCKER_HOST=ssh://user@host / Docker 上下文存取。此功能適用於開發、 除錯、小規模執行,以及由本地編碼代理程式將工作提交至 遠端 GPU 伺服器的作業流程。

當資料位於 Docker 主機本地端,或可透過 掛載的卷宗/雲端憑證存取時,請使用本地 Docker。請勿將其用於遠端叢集排程、 多節點訓練,或需要 SLURM 排程的任務。

當代理程式運行於工作站或筆記型電腦上,但 Docker 守護程式與 GPU 位於另一台單 GPU 伺服器時,請使用遠端 Docker。在遠端 Docker 模式下, specs 中的所有本機檔案系統路徑均會在遠端 Docker 主機上解析, 而非在代理程式機器上。

預檢

工作流程必須在啟動 Docker 工作之前驗證主機的 GPU 執行環境。若 檢查失敗,請提示使用者批准安裝,執行顯示的安裝 指令,並重新執行預檢。

# Host GPU runtime: NVIDIA driver 580, CUDA 13.0, NVIDIA Container Toolkit 1.19.0.
TAO_SKILL_BANK_ROOT="${TAO_SKILL_BANK_ROOT:-$PWD}"
SETUP_SCRIPT="${TAO_SKILL_BANK_ROOT}/skills/platform/tao-setup-nvidia-gpu-host/scripts/setup-nvidia-gpu-host.sh"

bash "$SETUP_SCRIPT" --backend docker --check-only || {
  echo "MISSING: TAO GPU host runtime is not ready."
  echo "After user approval, run:"
  echo "  bash \"$SETUP_SCRIPT\" --backend docker --install --yes"
  exit 1
}

# Mode 1 — direct docker (no Python). All you need is docker + the GPU runtime.
docker info >/dev/null 2>&1 || { echo "MISSING: docker daemon not reachable. Start Docker."; exit 1; }
docker run --rm --runtime=nvidia --gpus all ubuntu nvidia-smi >/dev/null 2>&1 || {
  echo "MISSING: NVIDIA Container Toolkit not installed/configured. See:"
  echo "  bash \"$SETUP_SCRIPT\" --backend docker --install --yes"
  exit 1
}

# Mode 2 — TAO SDK wrapper. Adds Job handles, S3 I/O wrapping, ActionWorkflow.
# Skip this block if Mode 1 is sufficient for the user's request.
# When Mode 2 is in scope, read `tao-skill-bank:tao-run-platform` for the DockerSDK
# kwarg contract, build_entrypoint, and monitoring patterns.
# nvidia-tao-sdk is on public PyPI; pin lives in versions.yaml (wheels.tao_sdk_docker).
PIN=$("${TAO_SKILL_BANK_PATH:?}/scripts/resolve_versions_key.py" wheels.tao_sdk_docker)
python -c "import tao_sdk" 2>/dev/null || python -m pip install "$PIN"
python -c "import docker" 2>/dev/null || python -m pip install "$PIN"
python -c "import tao_sdk, docker"

# DockerSDK attaches every job container to ${DOCKER_NETWORK:-tao_default}.
# Create the network if it is missing; the operation is local and idempotent.
DOCKER_NETWORK_NAME="${DOCKER_NETWORK:-tao_default}"
docker network inspect "$DOCKER_NETWORK_NAME" >/dev/null 2>&1 || \
  docker network create "$DOCKER_NETWORK_NAME" >/dev/null

若檢查失敗,代理程式會提示使用者透過 Bash 授權安裝/修復後再繼續。可透過 pip 安裝的 Python 需求以及上述 Docker 網路建立屬例外情況:應自動進行安裝/建立,然後重新執行預檢。

憑證

除存取 Docker 守護程式外,無需其他平台憑證。

可選環境變數:

  • DOCKER_HOST:可選的 Docker 守護程式 URL。若未設定,SDK 將使用 Docker Python 客戶端的標準環境/預設套接字解析方式。此參數為 remote-docker 平台選項所必需。
  • DOCKER_NETWORK:工作容器所使用的 Docker 網路。預設值為 tao_default.
  • DOCKER_USERNAME:註冊庫使用者名稱。預設值為 $oauthtoken NGC 的預設值。
  • NGC_KEY:用於從 nvcr.io.
  • HOST_SSH_PATH:當 AutoML 腦容器需要 SSH 金鑰 來監控遠端 SLURM 子工作時,此路徑會掛載至該容器中。
  • ACCESS_KEY、SECRET_KEY、S3_ENDPOINT_URL、S3_BUCKET_NAME: 針對仍從本地容器讀取/寫入雲端 儲存的作業,可選用的 S3 相容儲存設定。

啟動前檢查

在生成腳本或啟動容器之前:

  1. 請確認 Docker 守護程式可被存取、NVIDIA Container Toolkit 已註冊 為 Docker 執行環境、已回報 GPU 及驅動程式版本,且測試 容器在啟動前能偵測到 GPU。若為遠端 Docker,請透過 docker run ... nvidia-smi 遠端守護程式查詢 GPU;切勿使用代理伺服器上的 nvidia-smi 代理機上的資源。
  2. 驗證每個本機/檔案資料集的標註及媒體路徑是否存在於 Docker 主機上。
  3. 針對 s3:// 資料集/結果而言,請驗證 ACCESS_KEY 是否 SECRET_KEY 已設定 且精確路徑可透過 aws s3 ls。若 aws 缺失, 請回報此缺失的依賴項,並在安裝前進行確認;安裝完成後請重新執行預檢 。
  4. 驗證模型專屬的憑證,例如 HF_TOKEN 。
  5. 使用 nvidia-smi ,並在用戶提出此限制條件時,避開 其他正在執行的作業已佔用的 GPU。在啟動審查中顯示所選 的 GPU ID。
  6. 對於已知架構限制的模型/容器組合,請在啟動前 比較主機 GPU 運算能力與容器堆疊。若 選定的映像檔無法針對主機架構進行 JIT 編譯或執行核心函式,請及早 阻擋並要求提供相容的映像檔或平台。

若可行,請使用內建的輔助程式進行這些檢查:

${TAO_SKILL_BANK_PATH:-~/tao-skills-external}/scripts/check_tao_launch_preflight.py \
  --platform local-docker \
  --container-image "" \
  --path train_annotation=/abs/path/to/annotations.json \
  --path train_media=/abs/path/to/media

對於遠端 Docker 守護程式,請使用 remote-docker platform 並傳遞或匯出 DOCKER_HOST。該輔助程式會驗證遠端 GPU/執行時環境的就緒狀態,並透過唯讀綁定掛載檢查 遠端主機的資料集路徑:

${TAO_SKILL_BANK_PATH:-~/tao-skills-external}/scripts/check_tao_launch_preflight.py \
  --platform remote-docker \
  --docker-host ssh://user@gpu-host \
  --container-image "" \
  --gpu-smoke-image ubuntu:22.04 \
  --path train_annotation=/remote/data/train/annotations.json \
  --path train_media=/remote/data/train

上述 --path 上述值必須存在於遠端 Docker 主機上。請勿傳入 僅存在於本地筆電或 Codex 主機上的路徑。

多 GPU 與多節點

本地 Docker 不支援多節點。一個工作會運行於本地 Docker 守護程式的主機上,且不進行跨主機協調。

本地主機上的多 GPU 功能可透過 NVIDIA Container Toolkit 的 --gpus 標誌 (--gpus all 或 --gpus '"device=0,1,2,3"'). DockerSDK.create_job(gpu_count=N) 會直接傳遞至 --gpus)。單主機分散式初始化會如常使用 localhost; torchrun --nproc-per-node=N 或 PyTorch DDP 皆可如常運作。

後端詳細資訊

請使用 SDK 後端值 local-docker。本地的後端架構沒有額外的 後端細節,因此大部分路由是由環境和工作 參數所控制:

{
  "backend_type": "local-docker",
  "num_gpu": 1
}

遵循 Brev SDK 的設計,平台/控制平面值仍保留在 SDK 狀態與 Docker 標籤中。SDK 不會注入 BACKEND, HOST_PLATFORM, MONGOSECRET, DOCKER_HOST,亦不 DOCKER_NETWORK 注入至訓練容器中。

容器執行

TAO SDK 的本地 Docker 處理程式透過 Docker Python 客戶端啟動容器:

  • 後端工作名稱採用 tao-job- SDK 處理程式所採用的格式。
  • 指令通常為 ["/bin/bash", "-c", ""].
  • 容器以分離模式執行。SDK 預設會保留容器,因此狀態與 日誌仍可檢視,除非 DOCKER_AUTO_REMOVE=true.
  • /dev/shm 以 tmpfs 方式掛載。
  • Docker 守護程式會將已設定的 Docker 網路套用至該工作 容器;該設定不會作為程序環境變數傳遞。
  • 在 替換容器啟動之前,系統會先停止並移除具有相同工作 ID 的現有容器。

若需存取 GPU,處理程式會自動偵測主機類型:

  • Tegra 或 Jetson 主機使用 runtime="nvidia" 加上 NVIDIA_VISIBLE_DEVICES ,而 NVIDIA_DRIVER_CAPABILITIES=all.
  • 標準 x86 主機則使用具備 GPU 功能的 Docker device_requests 並具備 GPU 功能。

若 num_gpus 為 0,則不會分配任何 GPU。若 num_gpus 為 -1,則會請求所有可見的 GPU。對於共用開發機器,應優先採用明確的 GPU 數量指定。 當有明確的裝置 ID 可用時,在共用機器上應優先使用裝置 ID 而非僅依數量選取, 以避免啟動時佔用其他任務正在使用的 GPU。

儲存

本地 Docker 接受本地及 file:// 路徑,因為容器運行於 同一台 Docker 主機上。請確保規格中的每個路徑均符合以下任一條件:

  • 已由處理程式或外圍服務掛載至容器中,
  • 容器內部已可存取,或
  • 具備匹配憑證的雲端 URI。

對於遠端/共用檔案系統,請優先選擇擁有該檔案系統的平台。 例如,針對叢集上的 Lustre 路徑,請使用 SLURM 加上 lustre:///... 在叢集上處理 Lustre 路徑。

監控

  • SDK 處理程式會直接映射 Docker 容器狀態:已建立 → 待處理、 正在執行/重新啟動 → 執行中、已暫停 → 暫停中、退出代碼 0 → 完成、 非零退出代碼 → 錯誤。
  • 日誌透過 Docker Python 客戶端直接來自指定容器 (docker logs tao-job-).

若容器已退出、當機、正在移除或無法找到,狀態 對齊機制會將後端進程視為已終止。

取消

取消操作會停止指定容器。GPU 所有權由 Docker / NVIDIA 執行環境管理,而非由 TAO Core 的本地 GPU 管理器管理。

可選:透過 TAO SDK

若您需要工作處理程序(Job handles)、透過 SDK 的 script_runner,或 跨會話的持久性:

from tao_sdk.platforms.docker import DockerSDK

sdk = DockerSDK()  # reads DOCKER_HOST, NGC_KEY, S3 creds from env
job = sdk.create_job(
    image='nvcr.io/nvidia/tao/tao-toolkit:6.26.3-pyt',
    command='dino train -e /tmp/spec.yaml',
    gpu_count=1,
    inputs={'/data/train.json': 's3://bucket/coco/train.json'},
    outputs=['/results/'],
)

status = sdk.get_job_status(job.id)
logs = sdk.get_job_logs(job.id, tail=200)

這會封裝相同的 docker run 呼叫封裝在一個 Job 處理程序中封裝同一個呼叫,並將 入口點路由至 script_runner ,因此 inputs/outputs 能自動從 / 下載 或上傳至 S3。若您不需要這些功能,只需直接使用 docker run 直接使用即可——無需安裝 SDK。

錯誤模式

Docker 客戶端未初始化:請確認已安裝 Docker Python 套件, 若 DOCKER_HOST (若未使用預設的本地套接字),並確認 該程序能與守護程序通訊。

GPU 指派失敗:請求的 GPU 不可用、NVIDIA Container Toolkit 未配置,或 Docker 守護程序無法建立 GPU 裝置 請求。請減少使用的 GPU 數量、等待其他工作完成,或確認 docker run --gpus ... 在主機上是否能正常運作。

映像檔拉取授權失敗:請設定有效的 NGC_KEY 私有 nvcr.io 映像檔 或於 docker login nvcr.io -u '$oauthtoken' 於 Docker 主機上執行。

容器意外退出:請檢查 docker logs tao-job-、 已設定的 DOCKER_NETWORK,以及由 SDK 動作執行器產生的指令。

容器內路徑不存在:主機上的本機路徑未必會 掛載至工作容器中。請使用動作執行器所支援的路徑規範, 或透過外圍服務配置明確的卷宗。

在 GitHub 上查看
---
name: tao-run-on-local-docker
description: Run TAO SDK jobs as Docker containers on a local or remote Docker daemon with NVIDIA GPU support, including preflight checks and credential handling.
license: Apache-2.0
---

# Local Docker

Single-node execution platform that runs TAO jobs as named Docker containers on
a Docker daemon. The daemon can be local to the agent host or remote through
`DOCKER_HOST=ssh://user@host` / a Docker context. It is useful for development,
debugging, small runs, and workflows where a local coding agent submits jobs to
a remote GPU box.

Use local Docker when the data is local to the Docker host or accessible through
mounted volumes/cloud credentials. Do not use it for remote cluster scheduling,
multi-node training, or jobs that need SLURM queueing.

Use remote Docker when the agent is running on a workstation or laptop but the
Docker daemon and GPUs are on another single GPU server. In remote Docker mode,
all local filesystem paths in specs are interpreted on the remote Docker host,
not on the agent machine.

## Preflight

The workflow must verify the host GPU runtime before starting Docker jobs. If
the check fails, prompt the user to approve the install, run the printed install
command, and rerun the preflight.

```bash
# Host GPU runtime: NVIDIA driver 580, CUDA 13.0, NVIDIA Container Toolkit 1.19.0.
TAO_SKILL_BANK_ROOT="${TAO_SKILL_BANK_ROOT:-$PWD}"
SETUP_SCRIPT="${TAO_SKILL_BANK_ROOT}/skills/platform/tao-setup-nvidia-gpu-host/scripts/setup-nvidia-gpu-host.sh"

bash "$SETUP_SCRIPT" --backend docker --check-only || {
  echo "MISSING: TAO GPU host runtime is not ready."
  echo "After user approval, run:"
  echo "  bash \"$SETUP_SCRIPT\" --backend docker --install --yes"
  exit 1
}

# Mode 1 — direct docker (no Python). All you need is docker + the GPU runtime.
docker info >/dev/null 2>&1 || { echo "MISSING: docker daemon not reachable. Start Docker."; exit 1; }
docker run --rm --runtime=nvidia --gpus all ubuntu nvidia-smi >/dev/null 2>&1 || {
  echo "MISSING: NVIDIA Container Toolkit not installed/configured. See:"
  echo "  bash \"$SETUP_SCRIPT\" --backend docker --install --yes"
  exit 1
}

# Mode 2 — TAO SDK wrapper. Adds Job handles, S3 I/O wrapping, ActionWorkflow.
# Skip this block if Mode 1 is sufficient for the user's request.
# When Mode 2 is in scope, read `tao-skill-bank:tao-run-platform` for the DockerSDK
# kwarg contract, build_entrypoint, and monitoring patterns.
# nvidia-tao-sdk is on public PyPI; pin lives in versions.yaml (wheels.tao_sdk_docker).
PIN=$("${TAO_SKILL_BANK_PATH:?}/scripts/resolve_versions_key.py" wheels.tao_sdk_docker)
python -c "import tao_sdk" 2>/dev/null || python -m pip install "$PIN"
python -c "import docker" 2>/dev/null || python -m pip install "$PIN"
python -c "import tao_sdk, docker"

# DockerSDK attaches every job container to ${DOCKER_NETWORK:-tao_default}.
# Create the network if it is missing; the operation is local and idempotent.
DOCKER_NETWORK_NAME="${DOCKER_NETWORK:-tao_default}"
docker network inspect "$DOCKER_NETWORK_NAME" >/dev/null 2>&1 || \
  docker network create "$DOCKER_NETWORK_NAME" >/dev/null
```

If a check fails, the agent prompts the user to authorize the install/fix via Bash before proceeding. Pip-installable Python requirements and Docker network creation above are exceptions: install/create them automatically, then rerun preflight.

## Credentials

There are no platform credentials required beyond access to the Docker daemon.

Optional environment:

- **DOCKER_HOST**: Optional Docker daemon URL. If unset, the SDK uses the
  Docker Python client's normal environment/default socket resolution. Required
  for the `remote-docker` platform option.
- **DOCKER_NETWORK**: Docker network for job containers. Default is
  `tao_default`.
- **DOCKER_USERNAME**: Registry username. Default is `$oauthtoken` for NGC.
- **NGC_KEY**: Used when pulling private images from `nvcr.io`.
- **HOST_SSH_PATH**: Mounted into AutoML brain containers when they need SSH keys
  to monitor remote SLURM child jobs.
- **ACCESS_KEY**, **SECRET_KEY**, **S3_ENDPOINT_URL**, **S3_BUCKET_NAME**:
  Optional S3-compatible storage settings for jobs that still read/write cloud
  storage from a local container.

## Launch Preflight

Before generating scripts or starting containers:

1. Verify the Docker daemon is reachable, NVIDIA Container Toolkit is registered
   as a Docker runtime, GPUs and driver version are reported, and a smoke
   container can see GPUs before launch. For remote Docker, query GPUs through
   `docker run ... nvidia-smi` against the remote daemon; do not use local
   `nvidia-smi` from the agent machine.
2. Verify every local/file dataset annotation and media path exists on the
   Docker host.
3. For `s3://` datasets/results, verify `ACCESS_KEY` and `SECRET_KEY` are set
   and the exact paths are readable with `aws s3 ls`. If `aws` is missing,
   report the missing dependency and ask before installing it; rerun preflight
   after installation.
4. Verify model-specific credentials such as `HF_TOKEN` before launch.
5. Check current GPU occupancy with `nvidia-smi` and avoid GPUs already used by
   other running jobs when the user requested that constraint. Show the selected
   GPU ids in the launch review.
6. For model/container combinations with known architecture limits, compare
   host GPU compute capability with the container stack before launch. If the
   selected image cannot JIT or run kernels for the host architecture, block
   early and ask for a compatible image or platform.

Use the packaged helper for these checks when possible:

```bash
${TAO_SKILL_BANK_PATH:-~/tao-skills-external}/scripts/check_tao_launch_preflight.py \
  --platform local-docker \
  --container-image "<selected-image>" \
  --path train_annotation=/abs/path/to/annotations.json \
  --path train_media=/abs/path/to/media
```

For a remote Docker daemon, use the `remote-docker` platform and pass or export
`DOCKER_HOST`. The helper verifies remote GPU/runtime readiness and checks
remote-host dataset paths through read-only bind mounts:

```bash
${TAO_SKILL_BANK_PATH:-~/tao-skills-external}/scripts/check_tao_launch_preflight.py \
  --platform remote-docker \
  --docker-host ssh://user@gpu-host \
  --container-image "<selected-image>" \
  --gpu-smoke-image ubuntu:22.04 \
  --path train_annotation=/remote/data/train/annotations.json \
  --path train_media=/remote/data/train
```

The `--path` values above must exist on the remote Docker host. Do not pass
paths that exist only on the local laptop or Codex host.

## Multi-GPU and multi-node

**Multi-node is not supported on local Docker.** One job runs on the local Docker daemon's host with no cross-host coordination.

Multi-GPU **on the local host** is supported via the NVIDIA Container Toolkit's `--gpus` flag (`--gpus all` or `--gpus '"device=0,1,2,3"'`). `DockerSDK.create_job(gpu_count=N)` plumbs through to `--gpus`. Single-host distributed init uses `localhost`; `torchrun --nproc-per-node=N` or PyTorch DDP work as usual.

## Backend Details

Use the SDK backend value `local-docker`. The local backend schema has no extra
backend details, so most routing is controlled by environment and job
parameters:

```json
{
  "backend_type": "local-docker",
  "num_gpu": 1
}
```

Following the Brev SDK design, platform/control-plane values stay in SDK
state and Docker labels. The SDK does not inject `BACKEND`, `HOST_PLATFORM`,
`MONGOSECRET`, `DOCKER_HOST`, or `DOCKER_NETWORK` into the training container.

## Container Execution

The TAO SDK local Docker handler starts containers through the Docker Python
client:

- Backend job name uses the `tao-job-<job_id>` form used by SDK handlers.
- Command is usually `["/bin/bash", "-c", "<job command>"]`.
- Containers run detached. The SDK keeps containers by default so status and
  logs remain inspectable, unless `DOCKER_AUTO_REMOVE=true`.
- `/dev/shm` is mounted as tmpfs.
- The configured Docker network is applied by the Docker daemon for the job
  container; it is not passed through as a process environment variable.
- Existing containers with the same job id are stopped and removed before a
  replacement starts.

For GPU access, the handler auto-detects the host type:

- Tegra or Jetson hosts use `runtime="nvidia"` plus
  `NVIDIA_VISIBLE_DEVICES` and `NVIDIA_DRIVER_CAPABILITIES=all`.
- Standard x86 hosts use Docker `device_requests` with GPU capabilities.

If `num_gpus` is `0`, no GPUs are assigned. If `num_gpus` is `-1`, all visible
GPUs are requested. Prefer explicit GPU counts for shared development machines.
When explicit device ids are available, prefer them over count-only selection
on shared machines so the launch does not steal GPUs occupied by other tasks.

## Storage

Local Docker accepts local and `file://` paths because the container runs on the
same Docker host. Make sure every path in the spec is either:

- mounted into the container by the handler or surrounding service,
- reachable from inside the container already, or
- a cloud URI with matching credentials.

For remote/shared filesystems, prefer the platform that owns that filesystem.
For example, use SLURM plus `lustre:///...` for Lustre paths on a cluster.

## Monitoring

- The SDK handler maps Docker container state directly: created -> Pending,
  running/restarting -> Running, paused -> Paused, exit code 0 -> Complete,
  nonzero exit -> Error.
- Logs come directly from the named container through the Docker Python client
  (`docker logs tao-job-<job_id>`).

If the container has exited, died, is being removed, or cannot be found, status
reconciliation treats the backend process as terminated.

## Cancellation

Cancellation stops the named container. GPU ownership is managed by Docker /
the NVIDIA runtime, not by TAO Core's local GPU manager.

## Optional: via the TAO SDK

If you want Job handles, S3 I/O wrapping via the SDK's `script_runner`, or
durability across sessions:

```python
from tao_sdk.platforms.docker import DockerSDK

sdk = DockerSDK()  # reads DOCKER_HOST, NGC_KEY, S3 creds from env
job = sdk.create_job(
    image='nvcr.io/nvidia/tao/tao-toolkit:6.26.3-pyt',
    command='dino train -e /tmp/spec.yaml',
    gpu_count=1,
    inputs={'/data/train.json': 's3://bucket/coco/train.json'},
    outputs=['/results/'],
)

status = sdk.get_job_status(job.id)
logs = sdk.get_job_logs(job.id, tail=200)
```

This wraps the same `docker run` invocation under a `Job` handle and routes
the entrypoint through `script_runner` so `inputs`/`outputs` get downloaded
from / uploaded to S3 automatically. If you don't need those, just use
`docker run` directly — no SDK install required.

## Failure Modes

**Docker client not initialized**: Verify the Docker Python package is installed,
set `DOCKER_HOST` if you are not using the default local socket, and confirm the
process can talk to the daemon.

**GPU assignment failed**: Requested GPUs are unavailable, the NVIDIA Container
Toolkit is not configured, or the Docker daemon cannot create GPU device
requests. Use fewer GPUs, wait for another job to finish, or verify
`docker run --gpus ...` works on the host.

**Image pull auth failed**: Set a valid `NGC_KEY` for private `nvcr.io` images
or run `docker login nvcr.io -u '$oauthtoken'` on the Docker host.

**Container exited unexpectedly**: Check `docker logs tao-job-<job_id>`, the
configured `DOCKER_NETWORK`, and the command produced by the SDK action runner.

**Path missing inside container**: A local path on the host is not necessarily
mounted into the job container. Use a path convention supported by the action
runner or configure an explicit volume through the surrounding service.

安裝 tao-run-on-local-docker

請下載並將技能檔案解壓縮至您的 .claude/skills/ 目錄中。

下載 ZIP

複製儲存庫並將技能檔案複製到您的專案中。

git clone https://github.com/NVIDIA/skills/tree/main/skills/tao-run-on-local-docker # Copy SKILL.md to your .claude/skills/ directory

複製 複製
快速設定: 將技能資料夾複製到 .claude/skills/ Claude 會自動偵測並使用該技能
儲存庫 NVIDIA/skills

相關技能

Verification &amp; Quality Assurance
更新時間 2026-06-29
klingai-upgrade-migration
更新時間 2026-07-03
base44-cli
更新時間 2026-06-29
Railway CLI Management
更新時間 2026-07-02
OR