隔離主機——LXC 或 Kubernetes
每個 Agent 一台 Linux 主機,可跑在 LXC 或 K8s Pod 上。真實的 root 權限、真實的檔案系統, 搭配 eBPF 出站流量政策——與您的主機、叢集控制平面, 以及其他所有租戶完全隔離。
開源的 Agent 執行環境,具備 SSH 原生隔離。 每個 Agent 都在 Kubernetes 或 LXC 上取得一台持久、 網路隔離的主機——不需要 kube-apiserver token,內建 eBPF 出站流量政策與 MCP server。可自行架設,Apache 2.0 授權。
自行架設在您自己的 VM 上,或省去維運工作、直接使用我們的雲端控制平面。
在全新的 Ubuntu VM 上安裝
curl -fsSL https://containarium.dev/install.sh | sudo bash
Containarium 是什麼
每個 Agent 都需要一個能實際運作的環境——一個能安全執行程式碼、 編輯檔案、呼叫工具的地方。Containarium 就是這個環境。 您帶來 Agent,我們提供主機。
每個 Agent 一台 Linux 主機,可跑在 LXC 或 K8s Pod 上。真實的 root 權限、真實的檔案系統, 搭配 eBPF 出站流量政策——與您的主機、叢集控制平面, 以及其他所有租戶完全隔離。
內建的 Sentinel(sshpiper + Caddy + PROXY protocol)讓每台主機 都取得一個可路由、具備 TLS 的主機名稱。SSH 與 HTTP 直接就能用。
主機內執行一個 MCP server,透過 stdio 提供 shell 與檔案操作能力。 任何支援 MCP 的 Agent 都能驅動它:Claude Code、Cursor、Cline,或您自己的 Agent。
運作原理
containarium create 會啟動一個 LXC 容器,並在 Sentinel 上註冊路由。
主機會對外提供 MCP server。您的 Agent 透過 SSH 或 HTTPS——以主機名稱連線。
Agent 編輯檔案、執行指令、發佈程式碼——都在一個您掌控的隔離環境中進行。
適用場景
給 Claude Code 或 Cursor 一台持久主機——跨工作階段保留狀態,隨處都能繼續發佈。
每個 PR 啟動一台主機,在裡面跑 Agent,用完即丟。不必再跟 runner 搶資源。
每個任務、每個使用者、每個租戶一台主機。Sentinel 負責路由;您負責 Agent。
在內建的 MCP server 旁掛上您自己的 MCP server。每個 Agent 都看得到兩者,不需額外接線。
適用於 CI
GitHub 代管的 Runner 是個黑盒子,測試一失敗就直接消失。 Containarium 讓每個 CI 工作都取得一台真正的 Linux 主機,跨執行留有暖快取—— 並在失敗後多存活一小時,讓真人(或 Agent) 能就地除錯。
name: CI
on: [pull_request]
jobs:
test:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: footprintai/containarium-run@v1
with:
api-url: ${{ secrets.CONTAINARIUM_API_URL }}
token: ${{ secrets.CONTAINARIUM_TOKEN }}
cache-key: ${{ hashFiles('go.sum') }}
# Three fields. Resist adding a fourth.
image: ubuntu-24.04
setup: # cached by cache-key
- apt-get install -y build-essential
- go mod download
test: # the actual CI command
- go test ./...
測試失敗時,keep-on-failure: true 會在您的 PR 上留下這則留言:
Failing test:
TestExposePort_TLSHandshake
in internal/server/expose_test.go:142
Debug this box live (expires in 58 minutes · extend 1h · tear down now)
# SSH in
ssh -p 2222 [email protected]
# Or hand it to your agent (Claude Code, Cursor, ...)
claude mcp add containarium-debug \
https://mcp.containarium.dev/box/pr-1234-abc?token=ey...
🤖 Posted by containarium-run · commit a7b2f93
三種將 CI 接上 Containarium 的方式
GitHub Actions 是常見的介面之一——而 Containarium 支援三種漸進式自主程度的整合方式。 能力(每個工作一台短生命週期 Linux 主機)在三者間相同, 差別只在於程式碼實際在哪裡執行。
| 層級 | 適合對象 | 設定方式 | 程式碼執行位置 |
|---|---|---|---|
|
0 · 立即試用
約 5 分鐘設定
|
評估中的團隊、業餘開源專案 | 註冊雲端版・使用 containarium-run Action |
程式碼 → GHA 代管 → cloud.containarium.dev → Containarium 主機 |
|
1 · 中型團隊
約 30 分鐘設定
|
擁有自有基礎架構的團隊 | 自行架設 Containarium 開源版・以 hacks/runner/ 建立 N 個短生命週期 Runner |
程式碼 → GHA 代管(僅負責調度)→ 您的 Runner 資源池 |
|
2 · 企業
稽核 / SSO
|
「程式碼不能離開我們的邊界」 | 第 1 層 + 稽核紀錄 + SSO + 資料落地文件 | 完全不經過 FootprintAI 的基礎架構 |
|
3 · 氣隙隔離
離線安裝包
|
受監管產業 | 第 2 層 + 離線安裝包 + 私有 Git server | 完全封閉於客戶的 VPC 之內 |
第 0 層是最快的評估路徑。第 1 層以上會將原始碼、測試與建置產物 留在您的網路內。四個層級底層都是同一個 Containarium 原生元件。
適用於 PR 預覽
規劃中 — 尚未推出以下的設計在 roadmap 上,還不在產品裡。我們把它寫出來,是因為那是 CI runner 接下來要走的方向——與其讓人以為它已經能用,我們寧願先說清楚。
今天真正能用的是底下那一層:一個會讀取 .github/containarium.yml、在 box 裡跑測試、並且在失敗後把 box 留著讓你 debug 的 CI runner。
參見「適用於 CI 執行」
讀取 .github/containarium.yml,執行 setup: + serve:。
同一台 box、暖快取,留言就地編輯,而不是每次推送都新增一則。
box 刪除、子網域釋放;在那之前閒置的預覽會先被暫停。
企業版 · 自帶雲端(BYOC)
VMware 把每一台伺服器變成多台隔離的 VM。Containarium 把每一台雲端 VM 變成多個隔離的容器——經過整併、治理與基準測試,全部運行在你自己的雲端帳號裡。 同樣的模式,往上疊一層。
把許多隔離的服務打包到你已經在運行的 VM 上,而不是每個工作負載都開一台 實例。更少、更高密度的機器,每個容器都以 eBPF 出站流量政策與 QoS 隔開。
RBAC、稽核日誌、SSO、安全掃描與備份——建立在永遠不會離開你帳號或 邊界的基礎設施之上。為資料落地與合規而設計。
同樣的隔離讓 Agent 機隊安全無虞:每個 Agent 一台可透過 SSH 連線的主機、 每個操作都被稽核,全部在你自己的雲端上。主權式 AI,無需自建整合。
選擇適合的版本
同樣的原生元件。由您決定誰來運行它。
CLI、平台 daemon、Sentinel、agent-box MCP server 全部包含在內。 自行架設在一台 VM 上。單租戶,但永遠屬於您。
create / list / route / expose-port同樣的原生元件,由我們為您代管執行。多租戶架構,依小時計費, 具備 SSO、稽核紀錄,以及精緻的控制平面。