扩展页面
插件(面板界面中称为“扩展”)是在面板旁运行的独立程序:商店、通知程序、你自己的机器人。它运行在自己的容器或服务中,有自己的界面和数据库,并通过网络访问面板。面板从不运行插件的代码,也从不在自己的页面中显示插件的页面。面板只保存与插件协作所需的内容:它的地址、指向其界面的链接、健康检查路径,以及可以授予它的两样东西:一个 API 令牌和一个 Webhook。该页面位于 服务 → 扩展,对主管理员开放。


有哪些插件,参见 插件。从头到尾完成第一次安装,参见 安装插件。
两个标签页
- 已注册:本面板协作的插件,以及仍处于 等待扩展响应 状态的安装。
- 浏览:addons.nexora-panel.org 上的插件目录,每天读取一次,点击 立即读取 时也会读取。其中每个插件都是 官方、已验证 或 非官方;这些等级的含义,以及如何用 更改来源 让面板使用镜像,见 插件目录。
当目录中有你已安装插件的更新版本时,扩展菜单上会出现一个圆点。
从目录安装
在 浏览 中选择一个插件,点击 安装。表单根据插件自身的描述生成,会询问:
- 由谁运行:我自己运行命令、面板通过 SSH,或 面板,在本服务器上(仅当面板直接运行在 Linux 服务器上、而不是在 Docker 中时提供)。
- 方式:作为服务、使用 Docker 或 Compose 文件。
- 面板访问它的地址 和 它访问面板的地址。
- 安装问题:端口、密码、HTTPS 应答方式,以及插件声明的其他任何问题。
选择 我自己运行命令 时,生成命令 会给出一条需要在插件服务器上以 root 运行的命令;包含你输入的机密信息的命令只显示一次。选择 SSH 或本服务器时,安装 会执行它并实时显示日志。无论哪种方式,面板随后都会等待插件在其地址上响应,显示它请求的内容,并在你点击 批准并注册 时注册它。在此期间你可以关闭表单,稍后通过 继续 回来。安装插件 逐一介绍了每个选项。
注册已在运行的插件
已签名的插件,通过认领码
通过目录发布的插件带有一份经过签名的自我描述。要注册一个你自己启动的此类插件:
- 启动插件。它会在日志或自己的页面上显示一个一次性的 认领码。
- 点击 注册已签名扩展,输入插件的 地址,然后点击 读取。
- 面板读取插件的描述,检查其签名,并显示它请求的内容:令牌的每项权限及理由、它希望的请求速率,以及其 Webhook 应接收的每个事件。请仔细阅读。非官方 插件会带有一条警告,说明 Nexora 尚未审核它。
- 输入认领码,然后点击 批准并注册。
面板会准确创建所请求的令牌和 Webhook 并交给插件,插件只有在认领码正确时才会接受。认领码错误时不会留下任何东西。在你批准之前,不会创建任何内容。
插件的令牌绑定到面板所有者,如果所有权被移交,令牌也会随之转移(参见 管理员)。
你自己的插件,手动添加
你自己运行的机器人或脚本通过 添加自有扩展 添加:
| 字段 | |
|---|---|
| 名称 | |
| 扩展标识 | 简短的标识(a-z、0-9、_、-);留空时取自名称,注册后不可更改 |
| 地址 | 面板访问它的地址 |
| 入口链接 | 它自己界面所在的位置:地址下的一个路径,或一个完整 URL |
| 健康检查 | 面板可以检查的路径;留空则不检查 |
| API 令牌 | 打开并选择其权限 |
| Webhook | 打开,填写地址下的路径或完整 URL,并选择事件 |
插件需要令牌、Webhook 或两者。保存时会 只显示一次 令牌和 Webhook 的签名密钥:请把它们填入你程序的设置中。以后可以用同一个表单编辑它们。
地址
只有本服务器、内网或 Docker 网络上的插件才接受纯 http://。其他任何位置都必须使用 https://,且证书受面板信任,因为插件的令牌会发送到那里。
已注册列表
每一行显示插件的名称和版本、它是 已签名(以及由谁签名)还是 自有、它的状态、它的授权,以及其令牌最近一次使用的时间。状态为以下之一:
| 状态 | 含义 |
|---|---|
| 已注册 | 正常工作 |
| 已暂停 | 被你停用(见下文) |
| 不健康 | 健康检查路径连续两次失败 |
行菜单包含可以对它执行的操作:
- 打开:在新标签页中打开插件自己的界面。
- 入口链接(已签名插件)或 编辑(自有插件)。
- 检查更新(已签名插件)。
- 查看更新,在有待批准的更新时出现。
- 证书。
- 在其服务器上更新 和 从其服务器移除,适用于由面板通过 SSH 或在本服务器上安装的插件。
- 暂停 或 恢复。
- 移除。
入口链接
你注册的地址是 面板 访问插件的地址。使用 Docker 时,这通常是一个浏览器无法打开的容器名称。入口链接 设置浏览器在点击 打开 时使用的地址;留空则使用插件声明的地址,插件的新版本会保留你设置的地址。
健康检查
插件设置了健康检查路径时,面板每分钟访问一次;返回 200 即为健康。连续两次失败会把它标记为 不健康,在页面上显示最近一次错误,并产生一次 panel.addon_unhealthy。下一次返回 200 时恢复正常,并产生 panel.addon_recovered。没有健康检查路径的插件永远不会被检查。把这两个事件发送到 Telegram 或邮件,即可及时获知(参见 Telegram)。
暂停
暂停 会停用插件而不移除它:它的令牌立即失效,Webhook 也不再接收事件。暂停期间产生的事件不会为它保留。已暂停的插件不会被健康检查。恢复 会让两者重新生效。
更新与批准
面板每小时重新读取一次已签名插件的描述,点击 检查更新 时也会读取:
- 新版本如果没有请求超出插件现有权限的内容,会自动应用。
- 新版本如果请求更多权限、更多事件或更高的请求速率,则会等待。插件保持现有权限不变,该行显示 更新 版本 待批准,并产生一次
panel.addon_update_waiting。查看更新 只列出它新增的内容,每项都附有理由,供你点击 批准。 - 如果更新请求插件从未拥有过的令牌或 Webhook,则无法直接批准:请移除该插件并重新注册。
新版本本身的安装在插件运行的地方进行:对于由面板安装的插件,使用 在其服务器上更新;否则在其服务器上重新运行安装命令。命令见 安装插件。
来自面板的证书
HTTPS 应答方式为 panel 的插件,会使用面板证书库中的证书为其公开地址提供服务,因此它不需要自己的证书,也不需要 443 端口。面板负责签发和续期;插件自行获取证书。在行菜单中点击 证书 可以选择或更换证书。对于运行在另一台服务器上的插件,只提供通过 dns-01 签发的证书、自签名证书和上传的证书,并且永远不提供面板自己的 HTTPS 证书。证书库见 证书。
使用自己的自签名证书的插件,会在授权界面上显示其 SHA-256 指纹;批准之前,请把它与插件自己的设置页面上显示的指纹进行比对。插件续期该证书后,由于面板不再信任它,健康检查会失败:打开 证书,比对 当前提供的证书,然后点击 信任此证书。
移除
移除 会先通过 panel.addon_removed 通知插件,然后删除它的令牌和 Webhook。插件保存在自己数据库中的内容会保留,因此重新注册时仍能找到这些数据。
从其服务器移除 会卸载由面板安装的插件:勾选 同时删除其数据 会一并删除其数据目录,此操作无法撤销。在你在这里同样点击 移除 之前,插件仍保持注册状态。
在其他页面上
插件的令牌和 Webhook 也会出现在 API 令牌 和 Webhook 与事件 页面上,标记为 扩展:名称。它们不能在那里编辑或删除,只能在这里操作。
