FootprintAI/Containarium

Open-source agent runtime — SSH-native isolation, eBPF egress policy, Kubernetes + LXC backends, GPU passthrough, MCP-native CLI

Containarium – 适用于 AI 代理的开源运行时

它是什么 – 一个可自行托管的平台,为每个 AI 代理提供其专属的隔离 Linux 容器(LXC 或 Kubernetes),可通过 SSH 访问。容器内运行一个轻量的 MCP(消息控制协议)服务器(agent-box),让代理可以发出安全且有界限的命令,例如 shell_exec、read_file、write_file 等。主机端也运行一个 MCP 服务器,负责创建、列出、删除及暴露容器。所有通信皆以 JWT 认证,并可由一个“哨兵”虚拟机作为前端,终止 TLS 并将 SSH/HTTPS 路由至正确的后端容器。

为何重要 – AI 代理(Claude、Cursor、Gemini、自定义 MCP 客户端)需要一个地方来编译代码、安装依赖、运行测试及提供 Web 应用程序,而不会污染开发者的笔记本电脑或共享的 Kubernetes 集群。Containarium 提供:

  • 持久性 – 容器在代理运行之间持续存在。
  • 强隔离 – 每个租户拥有自己的网络命名空间,没有 kube-apiserver 令牌,并有 eBPF 出口策略。
  • 真实的 Linux 环境 – 完整的 systemd、GPU 直通、ZFS 快照等。
  • 自行托管 – 可在便宜的 Ubuntu VM、本地硬件或任何云上运行,不像仅限 SaaS 的沙盒。

核心组件

组件 角色
agent-box(容器内 MCP 服务器) 在容器内执行安全的文件系统与 shell 操作。
平台 MCP 服务器 管理容器(创建、启动、停止、暴露端口、指标)。
containarium CLI 用户导向工具,与平台 MCP 通信并生成 SSH 配置。
Sentinel(sshpiper + Caddy) 常驻 VM,将 SSH 和 HTTPS 路由至正确的后端容器,提供公共主机名及 TLS 终止。
安全层 JWT 认证、可选的镜像摘要验证、通过 KMS 的信封加密密钥、eBPF 出口策略。

典型工作流程

  1. 安装 在 Ubuntu VM 上安装守护进程(curl … | sudo bash)。
  2. 创建一个 box:containarium quickstart alice – 创建 LXC 容器、生成 SSH 密钥、写入 ~/.containarium/ssh_config,并将 box 接入代理的 MCP 配置。
  3. 通过 SSH 连接:ssh alice hostname。
  4. 在 box 内安装代理:containarium code install alice(例如放置 agent-box 和 Claude Code)。
  5. 运行代码:containarium code run alice --prompt "add a health endpoint" – 代理在容器内执行,日志流式输出,之后可重新附加。
  6. 暴露服务:containarium expose-port alice --container-port 8080 --domain blog.example.com – Sentinel 上的 Caddy 将流量路由至容器。

谁会使用它 –

  • 想要在自己的基础设施上运行自主编码代理的团队。
  • 需要具备 GPU、持久且严格隔离的沙盒的公司。
  • 想要一个可重现的环境,可从任何地方通过 SSH 访问,并可提供公共 Web 应用程序的开发者。

从哪里开始 – 遵循 README 中的快速开始章节:使用全新的 Ubuntu 24.04 VM,运行安装程序,containarium quickstart <name>,同步 SSH 配置,并安装代理。仓库也提供多池部署、安全加固及集成(例如 pi 开发环境)的文档。

许可证与社区 – Apache 2.0、Go 1.25 代码库、公共 MCP 服务器徽章,以及一个实时演示网站。

相关

  • 项目
  • 项目
  • 项目
  • 项目