OpeniLinkOpeniLink
指南

快速开始

5 分钟内部署 OpeniLink Hub 并发送第一条消息。

本指南将带你从零开始,部署 OpeniLink Hub 并发送第一条消息。

第一步:安装 Hub

无需任何依赖,一行命令即可安装。支持 Linux 和 macOS:

curl -fsSL https://raw.githubusercontent.com/openilink/openilink-hub/main/install.sh | sh

安装完成后,直接启动:

oih

默认使用内置 SQLite 数据库,无需配置任何外部依赖。数据库文件自动存储在平台标准目录:

  • Linux: ~/.local/share/openilink-hub/openilink.db
  • macOS: ~/Library/Application Support/openilink-hub/openilink.db

你也可以将 Hub 注册为系统服务,实现开机自启:

oih install    # 安装为 systemd (Linux) / launchd (macOS) 服务
oih uninstall  # 卸载服务
docker run -d -p 9800:9800 ghcr.io/openilink/openilink-hub:latest

适合生产环境,包含 PostgreSQL 和 MinIO:

git clone https://github.com/openilink/openilink-hub.git
cd openilink-hub
docker compose up -d

这会启动三个服务:

服务端口说明
PostgreSQL 1715432数据持久化存储
MinIO 对象存储19000 (API) / 19001 (控制台)文件和媒体存储
OpeniLink Hub9800Hub 主服务
git clone https://github.com/openilink/openilink-hub.git
cd openilink-hub

# 构建前端
cd web && pnpm install && pnpm run build && cd ..

# 构建并运行
go build -o oih .
./oih

首次启动时,Hub 会自动执行数据库迁移,创建所有必要的表结构。无需手动运行迁移命令。

第二步:访问 Hub 控制台

在浏览器中打开 http://localhost:9800,你将看到 OpeniLink Hub 的登录页面。

第三步:注册账号

OpeniLink Hub 支持多种注册方式:

  • 密码注册:使用用户名和密码注册
  • Passkey 生物识别:使用指纹、面部识别或硬件密钥
  • GitHub OAuth:使用 GitHub 账号登录(需提前配置)
  • LinuxDo OAuth:使用 LinuxDo 账号登录(需提前配置)

首个注册用户自动成为管理员。 本地开发环境下,建议直接使用密码注册。

第四步:扫码绑定微信 Bot

登录后,按照以下步骤绑定你的微信 Bot:

  1. 点击控制台中的 "绑定 Bot" 按钮
  2. 页面将显示一个二维码
  3. 用微信扫描该二维码
  4. 在微信客户端确认登录
  5. Bot 自动上线,系统进入引导流程

绑定微信 Bot 需要使用真实的微信账号。请确保该微信号未在其他 iLink 服务上同时登录。

第五步:完成引导设置

首次绑定 Bot 后,系统会进入引导流程:

  1. 基础配置:可选择开启 AI 自动回复功能
  2. 应用安装:浏览应用市场,安装推荐的扩展应用

第六步:用 SDK 接收消息

以 Node.js 为例,安装 SDK 并编写接收消息的代码:

npm install openilink-sdk-node
import { Client, extractText } from "openilink-sdk-node";

// 使用 Channel API Key 初始化客户端
const client = new Client("<你的 API Key>");

// 扫码登录
const result = await client.loginWithQr({
  on_qrcode: (url) => console.log("请扫描二维码:", url),
});

if (!result.connected) {
  throw new Error(result.message);
}

console.log("Bot 已上线,开始监听消息...");

// 监听消息
await client.monitor(async (message) => {
  const text = extractText(message);
  if (!text) return;

  console.log(`收到消息: ${text}`);

  // 回复消息
  await client.sendText(
    String(message.from_user_id),
    `收到: ${text}`,
    String(message.context_token)
  );
});

运行代码后,向你的微信 Bot 发送一条消息,你将看到 Bot 自动回复。

环境变量说明

以下是 OpeniLink Hub 支持的主要环境变量:

变量默认值说明
LISTEN:9800HTTP 监听地址
DATABASE_URL平台标准路径下的 SQLiteSQLite 路径或 PostgreSQL 连接串
RP_ORIGINhttp://localhost:9800WebAuthn RP 源地址
RP_IDlocalhostWebAuthn RP ID
SECRETchange-me-in-production服务端密钥,用于签名和加密
STORAGE_ENDPOINTMinIO/S3 端点地址(可选)
STORAGE_ACCESS_KEY存储访问密钥(可选)
STORAGE_SECRET_KEY存储密钥(可选)
STORAGE_BUCKETopenilink存储桶名称(可选)

默认使用内置 SQLite,无需配置 DATABASE_URL。如需使用 PostgreSQL,设置 DATABASE_URL=postgres://... 即可切换。

在生产环境中,务必修改 SECRET 为随机的强密码字符串,并正确配置 RP_ORIGINRP_ID 为你的实际域名。

CLI 命令

命令说明
oih前台运行服务
oih install安装为系统服务(systemd / launchd)
oih uninstall卸载系统服务
oih version显示版本信息

下一步

On this page