@ computesdk/ sail (帮助)
小帆 计算SDK的提供者。 邮箱是 具有命令执行功能的被隔离的鞭炮微VM沙盒,原生 文件系统操作,以及公共的HTTP或TCP收听器.
安装
npm install computesdk @computesdk/sail
节点.js 22或更新 由 Sail SDK 要求.
配置
创建 Sail API 密钥 app.sailresearch.com (中文(简体) ), (中文(简体) ), 然后导出 :
export SAIL_API_KEY=your_sail_api_key
提供者接受:
interface SailConfig {
apiKey?: string;
app?: string;
image?: ImageSpec | Image;
}
apiKey倒计时SAIL_API_KEY。 。 。 .app拥有创建的 Sailbox 并返回到SAIL_APP,则computesdk。它是在缺失时首先使用时创建的.image默认为 Sail 的 ARM64 Devbox 已建入,其中包括 Node.js 和 Bun. 当工作量需要不同的运行时间时, 通过另一个 Sail 图像 结构.- 创建默认为
S斋盒. 过size: 'm'或者说size: 'l'改为create()当工作量需要更多计算时.
使用量
import { sail } from '@computesdk/sail';
const compute = sail({ app: 'my-app' });
const sandbox = await compute.instances.create();
const result = await sandbox.runCommand('node --version');
console.log(result.stdout);
await sandbox.filesystem.writeFile('/tmp/result.txt', result.stdout);
console.log(await sandbox.filesystem.readFile('/tmp/result.txt'));
await sandbox.destroy();
它也可以在ComputeSDK的共享客户端注册:
import { compute } from 'computesdk';
import { sail } from '@computesdk/sail';
compute.setConfig({ provider: sail({ app: 'my-app' }) });
const sandbox = await compute.instances.create();
支助业务
| 运行 | 支助 | 页:1 |
|---|---|---|
create | 对 | 默认为 ARM64 Devbox 打开 S; 支持 name, (中文(简体) ), size, (中文(简体) ), memoryGib,并取消. |
getById | 对 | 回返 null 用于丢失或终止的 Sailboxs . |
list | 对 | 范围为已配置的应用程序 . |
destroy | 对 | 终止Sailbox. |
runCommand | 对 | 支持cwd,环境,超时,和背景模式. |
getInfo | 对 | 刷新当前生命周期状态. |
getUrl | 对 | 曝光或再利用HTTP/HTTPS和TCP收听器. |
| 文件系统 | 对 | 原生读取、写取、mkdir、列表、存在和删除. |
| 模板 | 没有 | 配置一个帆 Image 而不是提供商. |
| 暂停/恢复 | 对 | pause() 在内存中保存 Sailbox; 文件和运行过程存活 resume()。 。 。 . |
| 抓图 | 对 | 检查站保存整个文件系统(包括 /tmp)和内存;源不停地运行. |
getUrl 不替换现有收听器,因为这样做将替换
它的许可名单。 协议相冲突的听众会产生出错.
计算SDK的创建 timeout 不支持: 它代表了硬沙盒
寿命,而Sail的自動睡眠只会睡眠一个闲置的Sailbox. 受约束的个人
命令为 runCommand超时或明确调用 destroy()。 。 。 .
使用 sandbox.getInstance() 为 Sail 专用到磁盘睡眠,分叉, SSH,
听者许可列表, 和证书- 注入 API .