安装服务端
Keragi 服务端由 wasmx 宿主 + 按需加载的 WASM 资源组成。宿主只负责运行资源,不包含具体业务源码。
1. 平台要求
- Linux x86_64(当前唯一支持的服务器平台)
- Node.js 18+(用于安装壳
@keragi/wasmx,宿主运行时不依赖 Node.js) - 一个可写目录用于存放配置、数据库和日志
- 数据库:默认使用 SQLite,不需要额外安装数据库服务
Windows、macOS、Linux ARM64、ESP32 等平台将在后续版本支持;PostgreSQL / MySQL 等外部数据库也将在后续版本提供。完整支持矩阵见运行环境与数据库。
2. 安装宿主
从下载页获取 keragi-wasmx-linux-x64.tgz,与所需资源包放在同一目录,然后:
npm install -g ./keragi-wasmx-linux-x64.tgz
安装后会提供 wasmx 命令。
当前版本使用下载页的
.tgz离线安装;npm 目前提供宿主与 userx,其他资源包将在后续版本提供。
3. 初始化部署目录
wasmx init ./keragi-deploy
cd keragi-deploy
目录结构:
keragi-deploy/
├── wasmx # 预编译宿主二进制
├── wasmx.json # 资源清单与 userx 管理配置
├── .env.example # 配置模板
├── start.sh # 后台启动
├── stop.sh # 停止
├── wasm/ # 按需安装的 WASM 资源
└── data/ # 数据库等运行时数据
4. 配置 .env
cp .env.example .env
至少确认:
WASMX_ADDR:监听地址,默认127.0.0.1:3001WASMX_DB:SQLite 路径,默认sqlite://data/clientx.dbJWT_SECRET:至少 32 位随机字符,宿主与userx共用BOOTSTRAP_ADMIN_CREDENTIAL/BOOTSTRAP_ADMIN_PASSWORD:初始管理员USERX_ADMIN_URL/USERX_PUBLIC_URL:宿主访问userx的地址USERX_ADMIN_CREDENTIAL/USERX_ADMIN_PASSWORD:宿主访问userx的管理员凭据
生成随机密钥:
openssl rand -base64 48
5. 安装资源
宿主与每个 WASM 资源都是独立包,按服务器类型任意组合:
wasmx add ../keragi-resx.tgz
wasmx add ../keragi-msgx.tgz
wasmx add ../keragi-userx.tgz
wasmx add ../keragi-conn.tgz
wasmx add ../keragi-agix.tgz
常见组合:
| 服务器类型 | 资源 |
|---|---|
| 连接器服务器 | conn |
| 用户服务器 | userx |
| 消息服务器 | msgx |
| AI 服务器 | agix |
| 主服务器 | resx + msgx + userx(可再加 conn / agix) |
也可以使用 preset:
wasmx init ./connector --preset connector --offline ..
wasmx init ./main --preset main --offline ..
wasmx init ./full --preset full --offline ..
安装后可用 wasmx list 查看资源清单。
6. 启动、停止与状态
wasmx start
wasmx status
wasmx stop
- 日志:部署目录的
wasmx.log - 数据:默认在
data/ - 健康检查:
curl http://127.0.0.1:3001/status
7. 对外服务
默认只监听 127.0.0.1。如果需要让 Web 客户端从其他机器访问:
- 把
WASMX_ADDR改为0.0.0.0:3001(或反向代理监听地址); - 配置 HTTPS / 反向代理;
- 在 Web 客户端的
config.json里填写对外地址; - 不要直接把管理接口暴露到不可信网络。
许可提示:Keragi 使用专有软件许可,当前版本按随包
LICENSE授予有限使用权利;后续版本可能对部分宿主功能或特定 WASM 资源采用订阅或商业授权,详见许可与收费说明。