Skip to content

文档

如何使用 Glac:快速入门、平台及其产品、工具和 API 参考。

更新于

Glac 在 Firecracker microVM 中运行 OCI 镜像:每个实例都是一个独立的 microVM,空闲时休眠,有需要时唤醒。方块把镜像作为服务运行,每个服务有自己的地址,也叫一个方块(在 API 中叫 app),没有请求时它的实例休眠;它的存储卷(在 API 中叫云盘)是不随使用它们的实例消失的磁盘。托管应用运行在方块之上:沙箱,即供 AI 智能体运行命令的机器;以及尚未开放的浏览器和数据库。先从获取密钥开始;平台的各个页面介绍计算、区域、地址、项目、日志、价格和限制如何运作,每个产品都有概览、快速入门,以及说明它如何运作的各个页面。

开始

  • 入门:创建账户和 API 密钥,安装 glac 命令行或某个 SDK,并在每个产品上迈出第一步。

平台

  • 计算:所有产品运行的基础。任意 OCI 镜像,每个实例都是独立的 Firecracker microVM;带键或不带键的实例,实例何时休眠、什么会唤醒它,以及方块和沙箱如何构建在它之上。
  • 区域:三个区域 na、eu 和 ap;沙箱、方块和云盘在哪里创建;某个区域无法承接时会怎样;以及流量如何按区域计价。
  • 地址:方块、沙箱链接和自定义域名的地址,经过平台前面的代理(TLS、DDoS 防护、缓存)或直连平台,以及代理的限制。
  • 网络:流量如何到达沙箱或方块,又如何离开。经过代理和直连的地址、SSH、项目的私有网络、沙箱自己的 IPv6 地址及其开放的端口、网络规则,以及计费内容。
  • 项目与密钥:账户负责付款、拥有成员,并在经过验证的地址接收通知;其余一切都在它的项目中。API 密钥属于一个项目,有各自的权限范围;令牌只能打开一个沙箱;控制台负责人员登录。
  • 日志、指标与追踪:方块的日志汇成一条流(实例的输出、每个请求一行、平台做了什么),还有它的指标、平台为每个请求记录的 span,以及把它们导出到任意 OpenTelemetry 接收端。
  • 价格与套餐:免费版和付费版两种套餐、各自包含什么、所有产品共用的一张价目表(其中包括按区域计价的流量和云盘),以及余额、充值、自动充值和支出上限如何运作。
  • 限制:各套餐允许账户同时拥有和保有多少、创建东西的速度上限,以及 API 本身的限制。
  • 提高限制:套餐的哪些限制可以应单个账户的要求提高,以及如何申请。

方块

  • 方块:把任意 OCI 镜像作为方块运行,即一个有自己地址的服务(在 API 中叫 app)。有请求时实例启动,请求停止后实例休眠;每次部署都是一个可以回滚到的版本。
  • 方块快速入门:用 glac 命令行、Python SDK 或控制台把镜像部署为方块,修改它、查看日志并回滚。
  • 部署与版本:应用的每次部署都会产生一个版本,版本构建完成并就绪后承接流量。版本由什么构成,版本失败时会怎样,以及如何回滚。
  • 实例与扩缩容:应用的实例在有请求时启动,请求停止后休眠,休眠一段时间后被删除。实例的数量、运行位置,以及如何在响应之后让工作继续。
  • 键控实例:应用的每个键(一个用户、一个会话、一个租户)一个实例,第一次见到这个键时创建,并连同内存和磁盘一起保留,供之后带同一个键的每个请求使用。
  • 地址与协议:方块在 glac.run 下的默认地址、自定义域名、在互联网上没有地址的方块,以及能到达实例的协议。
  • 服务与 Compose:每个应用都是其项目中的一个服务。服务在项目的私有网络上互相发现,共享变量,一起部署,把数据保存在云盘上,还可以从 Compose 文件导入。

沙箱

  • 沙箱:为每个 AI 智能体、用户或任务提供一台独立的机器,几毫秒内从任意 OCI 镜像创建。运行命令、读写文件、打开终端;空闲时休眠,唤醒时进程仍在运行。
  • 沙箱快速入门:用 glac 命令行、Python SDK 或控制台创建沙箱、在里面运行命令、复制文件、打开它的某个端口、创建快照并分叉。
  • 命令、文件与终端:从任意镜像创建沙箱、运行命令并读取输出、读写文件,以及终端。
  • 休眠与唤醒:沙箱何时进入休眠、什么会唤醒它、里面的程序如何让它保持运行或在休眠前得到通知、重启,以及长时间休眠后的删除。
  • 快照与分叉:快照保存运行中沙箱的内存、进程和磁盘;沙箱可以回到快照、从快照启动,或分叉成多个副本,各自从这一刻继续运行。
  • 链接、令牌与 SSH:本身就是凭据的沙箱端口链接、公开端口、在一段时间内能打开某个沙箱的令牌,以及用你自己的密钥登录 SSH。
  • 网络规则与机密:沙箱能访问互联网上的哪些地方、能向某个主机发送哪些请求,以及在请求出站时才加入的机密,里面的代码永远拿不到它们。

浏览器

尚未向账户开放:这些页面按目前正在构建的样子介绍它。

  • 浏览器:托管的 Chromium 会话,由 Playwright、Puppeteer 或任何其他 Chrome DevTools Protocol 客户端从外部驱动。有客户端连接时会话保持运行,最后一个客户端离开后,会话连同它的页面一起休眠。
  • 会话:/v1/browsers 的调用、创建会话时用什么、会话包含什么、用名称再次找到会话、会话何时运行和休眠、新地址,以及它的网络。
  • 实时视图与配置文件:实时观看会话的页面,以及给只可观看的人的地址;会话的配置文件,即它的 Cookie 和存储,由平台保存,并加载到新会话中。

云盘

  • 云盘:项目的磁盘,不随使用它的沙箱和方块消失。同一时间只有一个沙箱写入云盘;云盘在写入的同时被复制到所在区域的对象存储,所以区域中的任何机器都能挂载它。
  • 云盘快速入门:用 glac 命令行、Python SDK 或控制台创建一个云盘,在一个沙箱里写入,再在下一个沙箱里读取。
  • 云盘的工作方式:在沙箱或方块中挂载云盘、唯一的写入方、云盘存放在哪里、如何计费,以及项目最多能保有多少。
  • 云盘的快照与分叉:快照把云盘保存为某一时刻的状态,作为它在所在区域对象存储中的一个版本,无需复制。可以把云盘恢复到快照,从快照分叉出新云盘,任意多个沙箱也都可以以只读方式挂载它。
  • 共享存储卷与备份:存储卷是云盘底层的磁盘。共享存储卷是同一台机器上的多个沙箱同时挂载的文件系统;备份把存储卷复制到对象存储中,可以从备份创建新的存储卷。

数据库

尚未向账户开放:这些页面按目前正在构建的样子介绍它。

  • 数据库:为项目提供的托管 Postgres(16、17 或 18),位于项目的私有网络上,没有任何请求时休眠,有连接时唤醒。由方块的一个有状态服务和一个云盘构成,二者只由数据库修改。
  • PostgreSQL:数据库运行的软件:PostgreSQL 16、17 或 18,带 pgvector、PostGIS、TimescaleDB、pg_cron 等;所有者可以创建的扩展、角色、新数据库如何初始化,以及平台固定的设置。

工具

  • glac 命令行:一个可执行文件,管理 Glac 的所有产品(方块、沙箱、云盘),以及项目、项目的机密和账单,供终端前的人、CI 中的脚本和编程智能体使用。
  • Python SDK:Python SDK,一个客户端,每个产品(方块、沙箱、云盘)一个命名空间,外加平台本身的调用。只依赖标准库,支持 Python 3.9 及以上。
  • TypeScript SDK:Glac 的 TypeScript SDK,一个客户端,每个产品(方块、沙箱、云盘)一个命名空间,支持 Node 23.6 及以上,没有任何依赖(只用 fetch、WebSocket 和 node:crypto)。
  • Go SDK:Go SDK,一个客户端,每个产品(方块、沙箱、云盘)一个字段。只依赖标准库,支持 Go 1.21 及以上;context 作为第一个参数,错误作为返回值,使用函数式选项。
  • Rust SDK:一个客户端,每个产品(方块、沙箱、云盘)一个命名空间,平台本身的调用直接在客户端上。阻塞式调用,返回 Result,链式选项,四个依赖,不需要异步运行时。
  • Java SDK:Java SDK,一个客户端,每个产品(方块、沙箱、云盘)一个命名空间,外加平台本身的调用。支持 Java 17 及以上,基于 JDK 自带的 java.net.http,没有任何依赖。
  • MCP 服务器:把 Glac 的产品作为工具交给 AI 智能体:可部署的方块、可在其中工作的沙箱,适用于 Claude Code、Claude Desktop、Cursor 或任何 Model Context Protocol 客户端。

参考

  • API 参考:按产品列出 API 的每个调用,以及它的字段和响应。
  • 错误:所有错误的格式、docs_url 指向哪里,以及遇到把你带到这里的拒绝(套餐上限、项目的云盘和存储卷、账户被冻结、用户被锁定)和另外几个与费用有关的错误时,该怎么办。
导航

输入以搜索……

↑↓ 切换↵ 选择Esc 关闭