4.7 跨服务凭据

CubeSandbox 部署依赖多个组件:

2026-07-04 · 2 min · 2429 字 · 风来

4.6 WebUI 数字助理 (DB-backed session)

CubeSandbox 自带 WebUI 控制台,登入后由后端数据库(mysql/postgres)管理 session,不发 cookie,而是用 x-session-token header 携带不透明 token。

2026-07-04 · 2 min · 2748 字 · 风来

4.5 多租户隔离

CubeSandbox 的多租户基于 containerd namespaces(namespaces.WithNamespace(ctx, ns))+ tenant label + Redis keyspace 三层组合。

2026-07-04 · 2 min · 2936 字 · 风来

4.4 /health 豁免

Every request (except /health) must carry an Authorization: Bearer <token> or X-API-Key: <key> header

2026-07-04 · 2 min · 2007 字 · 风来

4.3 共享 HTTP 客户端(连接池上限)

CubeAPI 启动时创建一个全局共享的 reqwest::Client 实例,所有外部 HTTP 调用(auth callback、webhook、镜像拉取)都通过它发出。

2026-07-04 · 1 min · 1324 字 · 风来

4.2 per-API-key 速率限制

CubeSandbox 在 API 层用了 token bucket 限流,按 API key 维度分配独立配额。每条请求到来:

2026-07-04 · 2 min · 1963 字 · 风来

4.1 外部 auth callback

CubeSandbox 自身不实现 OAuth/JWT 之类的内嵌认证,而是把"是否放行"的决定委托给一个外部 HTTP 服务。每次接收请求,CubeAPI 都会把请求转发给外部 authcallbackurl,由 callback 返回

2026-07-04 · 2 min · 3266 字 · 风来

3.8 no_reaper / no_sub_reaper

Linux 进程树的"reaper"机制决定:谁负责回收"孤儿进程"(parent 死掉但子进程还活着)。在 Linux 中:

2026-07-04 · 2 min · 1854 字 · 风来

3.7 vsock 主机-客机通信

vsock 是 Linux 内核内嵌的 VM 主机-客机通信机制。它有一个独立地址族(AFVSOCK),使用 CID(contiguous identifier) 标识 host / guest:

2026-07-04 · 2 min · 2334 字 · 风来

3.6 OCI 容器兼容 (containerd-shim v2)

CubeShim 是 containerd shim v2 的实现,注册到 containerd 时 runtime type 是:

2026-07-04 · 2 min · 2558 字 · 风来