SuperAPI AI 工具集

migrate-kit-to-v3

部署与运维

查看项目

更新于 10-16 05:06

技能介绍

用途:把 v2 kit(一个 spec.yaml 加一个 Dockerfile)迁移为 v3 kit(单个 OCI 镜像,描述符以类型化能力声明需求并写入 manifest 注解,镜像配置承载运行时契约,层承载内容)。

主要能力:提供字段映射、能力规则与迁移注意事项;给出描述符校验、构建、运行、验证、发布的命令流程;说明 -mixin 变体的写法与叠加方式;列出实际迁移中能发现缺陷的检查手段与已知缺口。

使用方式:先通读 v2 的 spec.yaml、Dockerfile、README 与 testdata/tck.yaml,再写 v3 描述符、recipe 与 context 文件。校验用 docker buildx build . -f <kit>.yaml --output type=cacheonly;构建用 --load 或 --output type=oci,dest=/tmp/<kit>-layout,tar=false;运行用 sbx run ./<kit> .,mixin 用 sbx run ./<workload> --kit ./<kit>-mixin .;验证用 kit-tck validate --layout /tmp/<kit>-layout <tag> 或 kit-tck validate <镜像引用>;发布用 docker buildx build . -f <kit>.yaml --platform linux/amd64,linux/arm64 --push -t <registry>/sbx-kit-<kit>:<version>。

适用场景:需要把既有 v2 沙箱 kit 升级到 v3 并保持声明忠实、可验证、可发布的开发者。

限制:仓库为私有,go install 需 git 凭据与 GOPRIVATE=github.com/docker/*,公开模块代理返回 404;fork 的 token 无法运行 kit-tck,只能通过构建校验描述符。sbx kit validate 不接受 v3 源 kit。迁移会使 glob 旧布局的脚本、工作流与测试失效,需一并审计。签名可选,具体流程见 create-kit-v3。