@computesdk/ec2-firecrab

中文文档
1.0.5发布于 2026/11/06MITTypeScriptESM + CJS近 30 天下载 3480

作为计算SDK沙盒供应商,在自办EC2上的鞭炮微VM

中文使用文档
文档目录6 节
  1. 安装
  2. 先决条件
  3. 配置
  4. 使用量
  5. 支持的运行时间和特性
  6. 限制

@ computesdk/ ec2- firecrab

烟花 自动托管的 AWS EC2 上作为计算SDK 沙盒提供商的微VMs,由一台驱动 烟花 主持人。 每个沙盒是一款由OCI图像所建出并用共享的EC2超相机主机雕刻而成的火克微VM.

安装

npm install @computesdk/ec2-firecrab

先决条件

  • 搭配有嵌入式虚拟化能力英特尔类型的EC2主机(m8i编号 :c8i编号 :r8i, (中文(简体) ), m7i编号 :c7i编号 :r7i, (中文(简体) ), i7i,或任何 .metal与 CpuOptions.NestedVirtualization=enabled
  • 烟花 安装在主机上( n)firecrab-api 打开 127.0.0.1:5523(中文(简体) )
  • 在主机上创建的微网( E)POST /api/micro-networks——它的CIDR不得与VPC重叠
  • 导入至少一个 OCI 图像( O)firecrab image import <ref>(中文(简体) )
  • 返回 API 的路径: SSH/ SSM 端口前进, 或在主机上运行适配器

配置

import { ec2Firecrab } from '@computesdk/ec2-firecrab';

const provider = ec2Firecrab({
  // Off-host operation: one SSH target + key. The adapter lazily opens an
  // SSH local-forward to the host's loopback API and derives the guest-exec
  // jumphost from the same credentials — no manual tunnel or ProxyCommand.
  sshTarget: 'ubuntu@<host-public-ip>',       // or EC2_FIRECRAB_SSH_TARGET
  // sshTargets: ['ubuntu@ip1', 'ubuntu@ip2'], // host pool — or EC2_FIRECRAB_SSH_TARGETS (csv);
                                              // creates round-robin across hosts
  sshIdentityPem: process.env.SSH_KEY_PEM,    // or EC2_FIRECRAB_SSH_KEY (key material)
  // sshIdentityPath: '~/.ssh/firecrab.pem',  // or EC2_FIRECRAB_SSH_KEY_PATH

  microNetwork: 'lab',                        // name or EC2_FIRECRAB_MICRO_NETWORK;
                                              // or microNetworkId / EC2_FIRECRAB_MICRO_NETWORK_ID
  template: 'catthehacker-ubuntu-act-latest', // or EC2_FIRECRAB_TEMPLATE
  cpus: 2,
  memoryMib: 4096,
  diskGb: 16,
  egressPolicy: 'internet',                   // or 'isolated'
  sshUser: 'root',                            // or EC2_FIRECRAB_SSH_USER
});

已经在主机上还是隧道上? 奥米 sshTarget 和使用情况 apiUrl (单位:千美元)EC2_FIRECRAB_API_URL默认值 http://127.0.0.1:5523(三); sshProxyCommand (单位:千美元)EC2_FIRECRAB_SSH_PROXY_COMMAND)仍然是自定义跳伞者的逃生舱.

使用量

const sandbox = await provider.instances.create();
const result = await sandbox.runCommand('echo hello from the microVM');
console.log(result.stdout);
await provider.instances.destroy(sandbox.instanceId);

支持的运行时间和特性

  • 任何OCI图像都与来宾rootf相通——firecrab将其转换为ext4并配对为一内核. docker run 图像像 node:22, (中文(简体) ), alpine,或 catthehacker/ubuntu:act-latest 直接启动.
  • ~50ms 鞭炮靴;~19s 冷创造~以根活化为主的跑步(已验证 2026-10-23 on m8i.xlarge) (中文(简体) ).

限制

  • 执行是 SSH —— 说 runCommand 使用每VM管理的SSH 密钥(GET /api/vms/{id}/ssh-key)并相宾所出. 非主机呼叫器必须设置 sshProxyCommand 因为客机桥IP只是来自主机的routable. A 类 computesdk-runtime 宾客代理被计划用标准的HTTP exec/fs表面来取代.
  • 还没有文件系统块 ——文件操作回落为"不支持";它们今天跑过SSH并正式以运行时间注入着陆.
  • 没有 getUrl/审查 URL ——来宾口岸出版尚未上线.
  • 无快照、暂停/重现,或 background 模式 ——目前的"火花"建筑不会暴露出这些终点.
  • destroy 缓慢( ~ 30s) —— 说 stop 这是一个优雅的ACPI关闭 没有武力旗帜; DELETE 运行中的 VM 返回 409。 。 。 .
  • firecrab 的 API 是未经认证的回环 设计 ——你拥有运输(SSM/SSH地道).

版本与发布记录

@computesdk/ec2-firecrab 共发布 6 个版本,首次发布于 2026/10/24;过去 12 个月发布了 6 个版本。

版本发布日期距今
1.0.5latest2026/11/064 天前
1.0.42026/11/046 天前
1.0.32026/10/2813 天前
1.0.22026/10/2417 天前
1.0.12026/10/2417 天前
0.0.0-stage2026/10/2417 天前

关于 @computesdk/ec2-firecrab 的常见问题

@computesdk/ec2-firecrab 是什么?

作为计算SDK沙盒供应商,在自办EC2上的鞭炮微VM

如何安装 @computesdk/ec2-firecrab?

在项目目录运行 npm install @computesdk/ec2-firecrab,或使用 pnpm add / yarn add / bun add。

@computesdk/ec2-firecrab 支持 TypeScript 吗?

支持。包内自带 TypeScript 类型声明(package.json 声明了 types 入口),安装后即可获得类型提示,无需再安装 @types 包。

@computesdk/ec2-firecrab 支持 ESM 还是 CommonJS?

同时提供 ES Module 与 CommonJS 入口,import 和 require() 都可以使用,打包工具会自动选择合适的版本。

@computesdk/ec2-firecrab 可以商用吗?

@computesdk/ec2-firecrab 使用 MIT 许可。宽松许可:允许商业使用、修改和再分发,通常只需在分发时保留原版权与许可声明。以上为概括,不构成法律意见,请以许可原文为准。

@computesdk/ec2-firecrab 的下载量有多少?

根据 npm 官方下载统计,@computesdk/ec2-firecrab 在 2026/10/11 – 2026/11/09 这 30 天内被下载 3,480 次,日均约 116 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@computesdk/ec2-firecrab 还在维护吗?

最新版本 1.0.5 发布于 2026/11/06(4 天前);至今共发布 6 个版本,其中过去 12 个月发布了 6 个;首次发布于 2026/10/24。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。