升级客户端版本
orbitproxy 会持续发布客户端的新版本。本页说明如何确认客户端的当前版本,以及目前支持的升级方式:在控制台中在线更新、手动重新安装,以及升级 SDK 客户端。
升级只替换客户端程序,不会修改 ~/.orbitproxy 下的机器配置,因此升级后不需要重新注册或登录,已创建的分享和域名保持不变。
查看当前版本
可以通过以下任一方式查看客户端的当前版本:
- 在本机执行
orbitproxy version,或执行orbitproxy status查看输出中的version。 - 在控制台的「客户端」列表中查看「客户端版本」列。
当控制台发现已发布的版本高于客户端的当前版本时,会在「客户端版本」列的版本号旁显示一个升级图标。
升级方式
在控制台中在线更新
在线更新由控制台向客户端下发更新指令,客户端收到后下载与本机操作系统和架构对应的最新版本,替换自身并重启。
前提条件
- 客户端当前在线。客户端离线时「更新」按钮不可用,需要先让客户端上线,或改用手动重新安装。
- 你的账号拥有客户端的写权限。
- 运行客户端的用户对客户端程序所在目录有写权限。按安装指引将程序放在
~/.orbitproxy/bin时已满足该条件;放在/usr/local/bin等需要管理员权限才能写入的目录时,在线更新会因没有写权限而失败。
操作步骤
-
打开控制台的「客户端」列表,点击目标客户端「客户端版本」列中的升级图标。也可以进入客户端的详情页,点击右上角的「更新」按钮。
-
在确认对话框中点击「更新」。对话框会提示将下载新版本并重启该客户端,已建立的云端点会短暂中断。
-
等待处理完成。控制台会显示处理进度,成功后提示「在线更新成功」,客户端版本更新为最新版本。
更新期间客户端会重启,已建立的云端点会短暂中断,重启完成后自动恢复。客户端使用与原来相同的启动参数重新启动。
更新失败
更新失败时,客户端不会被替换,会继续以原版本运行。控制台会显示失败原因,常见原因如下:
| 现象 | 原因与处理 |
|---|---|
| 提示「客户端离线,无法执行该操作」 | 客户端当前没有连接云网关。使用 orbitproxy status 确认客户端是否在运行,恢复在线后重试。 |
提示没有写权限(permission denied) | 运行客户端的用户无法写入程序所在目录。将程序移动到当前用户可写的目录,例如 ~/.orbitproxy/bin,或改用手动重新安装。 |
| 等待超时 | 更新最长等待约 2 分钟。通常由网络较慢导致下载未完成,确认网络后重试。 |
| 提示当前系统和架构没有可用的安装包 | 该机器的操作系统与架构没有对应的发布包,请联系官方客服。 |
手动重新安装
手动重新安装只覆盖客户端程序,不会修改机器配置。完成覆盖后,需要重启客户端才会运行新版本,尚未重启的客户端仍在运行旧版本。
macOS 和 Linux
-
停止正在运行的客户端。后台运行的使用
orbitproxy stop,系统服务使用sudo orbitproxy service stop,前台运行的在终端按Ctrl+C。各运行方式的区别请见 orbitproxy cli。 -
重新安装客户端。Linux 可以再次运行安装脚本,脚本会把最新版本安装到
~/.orbitproxy/bin/orbitproxy,覆盖原有程序:terminalcurl -fsSL https://dashboard.app.orbitproxy.cloud/install.sh | bash也可以在下载页下载对应系统和架构的压缩包,再解压到
~/.orbitproxy/bin:terminalmkdir -p ~/.orbitproxy/bin && tar -xvzf ~/Downloads/orbitproxy.tar.gz -C ~/.orbitproxy/bin -
重新启动客户端,并确认版本:
terminalorbitproxy run --background orbitproxy version使用系统服务时,改为执行
sudo orbitproxy service start。
Windows
- 停止正在运行的客户端。Windows 不允许覆盖正在运行的程序,必须先停止。系统服务以管理员身份执行
orbitproxy.exe service stop,前台运行的在终端按Ctrl+C。 - 打开下载页,下载 Windows 版(x64)压缩包,解压后覆盖原有的
orbitproxy.exe。 - 重新启动客户端。使用系统服务时,以管理员身份执行
orbitproxy.exe service start,否则执行orbitproxy.exe run。
升级 SDK 客户端
SDK 客户端不支持在控制台中在线更新,客户端列表中的升级图标会引导你查看更新指引。SDK 是业务项目的依赖,需要在项目中升级后重新构建并发布应用:
go get github.com/orbitproxy/orbitproxy-go升级完成后,重新部署应用,新版本即随应用一同生效。
升级后确认
升级并重启后,可以通过以下方式确认:
orbitproxy version输出的版本号为最新版本。orbitproxy status显示客户端正在运行。- 控制台中该客户端的状态为在线,且「客户端版本」列不再显示升级图标。
后续步骤
- orbitproxy cli:查看
version、status、stop和service等命令的用法。 - 客户端工作原理:了解客户端重启后如何重新连接云网关并恢复端点。
- 客户端架构安全性:了解云网关可以向客户端下发哪些指令。