boardwalk-labs/runner-images

GitHub: boardwalk-labs/runner-images

Boardwalk 托管 runner 的基础镜像定义仓库,提供可复现、可审查的 CI/CD 工作流执行环境。

Stars: 1 | Forks: 0

# runner-images [Boardwalk](https://boardwalk.sh) 托管 runner 的基础镜像定义——即你的工作流程序和 shell 步骤执行的环境。 镜像源、固定版本及版本控制策略均在此处且可复现;SBOM 和漏洞扫描报告随每次发布一同公布。 托管的 Boardwalk 平台基于这些基础镜像(按 digest 固定)构建其 worker 镜像, 随后添加一个私有运行时层。该层不予发布,但它不包含任何与机密相关的行为:此仓库中的基础镜像定义了你的代码在运行时所见的环境,并且你可以自行构建和检查它们。 ## 镜像 | 标签 | 镜像 | 文档 | | --- | --- | --- | | `boardwalk/linux` | `ghcr.io/boardwalk-labs/boardwalk-runner-linux:` | [docs/linux.md](./docs/linux.md) | ## 计划中的镜像 属于路线图,尚未发布。只有当某个变体成为一个真正独立的环境(而非基础镜像的简单换肤)且托管调度器能路由至其标签时,它才会发布。在此之前,需要更多功能的工作流可以在每次运行时进行安装(受运行时的出口策略限制)或使用自定义镜像。下方的规划仅为意向,非最终承诺。 | 标签 | 计划添加的内容(在基础镜像之上) | 状态 | | --- | --- | --- | | `boardwalk/linux-node` | 以 Node 为中心的工具链:包含额外的包管理器和多个 Node 版本,超越基础镜像中的单一 Node 24 | 已规划 | | `boardwalk/linux-python` | 固定的多版本 CPython 以及现代安装器 (uv / poetry),超越基础镜像中的 `python3` | 已规划 | 更大规格的机器在此处有意不作为标签:它是 `runs_on` 的 `size` 选择器 (`{ label: "boardwalk/linux", size: "large" }`),即对同一镜像的每次运行资源覆盖。 ## Firecracker 客户端工件 托管 runner 运行在 Firecracker microVM 底层架构上,该架构启动 **kernel** 和 **ext4 rootfs**,而不是容器。二者的构建方案——一个具有已验证必需能力集且固定版本的极简客户端 kernel、一个用于上述 runner 镜像的 OCI→ext4 扁平化工具,以及一个冒烟启动测试关卡——均位于 [`guest/`](./guest/README.md) 中。其信任机制与容器镜像相同:你的代码运行的环境在此定义且可复现。 ## 本地构建与检查 ``` docker build -t boardwalk-runner-linux images/linux docker run --rm -it boardwalk-runner-linux bash # inspect the runtime environment # 在任何 image 变更后重新生成已提交的 environment lock(出现 drift 时 CI 会失败): scripts/env-manifest.sh boardwalk-runner-linux > images/linux/ENVIRONMENT.lock ``` `images/linux/ENVIRONMENT.lock` 是可供人工审阅的固定 OS 包和工具列表;CI 会在每次 PR 时重新推导它,并在发生偏移时失败,因此环境变更将作为经过审查的 diff 合并。 每次发布都会公布镜像 digest、SPDX SBOM 以及漏洞扫描报告。 版本控制、扫描关卡、分类处理和弃用窗口记录在 [POLICY.md](./POLICY.md) 和 [SECURITY_TRIAGE.md](./SECURITY_TRIAGE.md) 中。 ## 本仓库不包含的内容 - 不是引擎([`boardwalk`](https://github.com/boardwalk-labs/boardwalk))——它负责在你的硬件上运行 控制平面。 - 不是自托管 runner 客户端([`runner`](https://github.com/boardwalk-labs/runner)) ——它负责在你的机器上执行 Boardwalk 调度的运行(同样可以使用这些镜像)。 ## 许可证 Apache-2.0
标签:Cutter, 云计算, 容器镜像, 开发环境, 自动化运维, 规则引擎, 请求拦截