面向开发与日常工程实践的通用容器运行时与工具集,开箱即用:
docker/Dockerfile 各类工具/环境的构建脚本scripts/build-docker.sh 构建与(可选)推送镜像的脚本scripts/cnb/roaming_env.sh 备份/恢复常用配置到 CNB 全局漫游目录scripts/cnb/upload_release.py 将附件上传到当前仓库的 Releasescripts/hf/upload_huggingface.sh 上传制品到 HuggingFace Hubscripts/hf/upload_modelscope.sh 上传制品到 ModelScopescripts/hf/upload_single_file.sh 通过 CNB 通用附件镜像上传单文件.ide/settings.json 作为 code-server 的默认设置CNB_DOCKER_REGISTRY 镜像仓库地址(例如: registry.example.com)CNB_REPO_SLUG_LOWERCASE 仓库路径(例如: maikebuke/runtime),用于拼装镜像名CNB_TOKEN_USER_NAME 用于访问 Registry API 的用户名CNB_TOKEN 用于访问 Registry API 的密码/Token# CPU 版
./scripts/build-docker.sh --type cpu --no-push 1.0.0
# GPU 版
./scripts/build-docker.sh --type gpu --no-push 1.0.0
# 同时构建 CPU/GPU(自动计算下一个版本号)
./scripts/build-docker.sh --type all --no-push
# 使用指定版本号
./scripts/build-docker.sh --type cpu 1.0.1
# 由脚本自动计算远端最新 tag 的下一个版本并推送
./scripts/build-docker.sh --type all
脚本参数说明(来自内置说明):
--type 构建类型:cpu | gpu | all(默认 all)--no-push 仅本地构建,不推送/验证<VERSION_TAG> 可选手动指定版本(如 0.0.1),省略时自动计算构建完成后会同时打上 :latest tag,并在推送模式下进行远端存在性校验。
BASE_IMAGE 传入):
debian:bookwormnvidia/cuda:12.9.1-cudnn-devel-ubuntu24.04uv 管理,多数常用 AI 相关包在 GPU 版本中预装nvm 安装指定版本,并预装若干 CLI Agents$HOME/.local/bin/env(如存在)# step 1. 修改 docker/Dockerfile 的内容
# step 2. 构建脚本
./scripts/build-docker.sh --no-push
# step 3. 构建并推送
./scripts/build-docker.sh
scripts/build-docker.sh
CNB_DOCKER_REGISTRY、CNB_REPO_SLUG_LOWERCASECNB_TOKEN_USER_NAME、CNB_TOKENscripts/cnb/roaming_env.sh
~/.cnb/backups,支持 runtime/repo 两个维度roaming_env.sh --loadroaming_env.sh --store --scope reposcripts/cnb/upload_release.py
CNB_REPO_SLUG、CNB_TOKENpython scripts/cnb/upload_release.py path/to/file --tag v0.0.1scripts/hf/*
flash-attn(该步骤耗时且可能受环境影响失败).ide/settings.json 会被复制为默认设置docker/Dockerfile 构建镜像的 Dockerfilescripts/build-docker.sh 构建镜像的脚本scripts/roaming_env.sh 备份常用的环境配置到 CNB 的全局漫游目录中scripts/upload_release.py 将指定的附件上传到当前仓库的 Release 中