跳转到内容

OpenCode Server

OpenChamber 运行在 OpenCode 服务器之上。默认情况下,它会为你启动一个,所以你无需做任何事。只有当你想让 OpenChamber 指向一个你已经运行的服务器,或者管理它所启动的服务器时,才需要本页内容。

OpenChamber 如何查找服务器

OpenChamber 启动时,会按以下顺序查找服务器:

  1. 复用它已经启动的服务器
  2. 如果你指定了外部服务器,则连接到它(见下文)
  3. 在默认端口(4096)上自动检测服务器
  4. 否则,启动并管理它自己的服务器

如果没有进行任何配置,第 4 步会自动发生,你就可以开始运行了。

连接到你已经运行的服务器

在启动 OpenChamber 之前设置这些变量:

Terminal window
OPENCODE_HOST=http://localhost:4096 OPENCODE_SKIP_START=true openchamber
  • OPENCODE_HOST — 你的 OpenCode 服务器的完整地址,包括端口(类似 http://localhost:4096 这样的值)。末尾不能带路径。
  • OPENCODE_SKIP_START=true — 告诉 OpenChamber 不要启动它自己的服务器。

如果你只需要更改端口,请设置 OPENCODE_PORT 而不是 OPENCODE_HOST

如果 OPENCODE_HOST 缺少端口或带有路径,OpenChamber 会忽略它并回退到启动自己的服务器。如果你期望的连接没有发生,请留意启动日志中的 [config] 警告。

从 CLI 管理服务器

Terminal window
openchamber status
openchamber logs
openchamber restart
openchamber stop

单独运行 openchamber 会在后台启动服务器。添加 --foreground 可以让它保持附加在你的终端上。

登录时启动 OpenChamber

使用 startup enable 安装原生用户服务。OpenChamber 在 macOS 上使用 launchd,在 Linux 上使用 systemd --user,在 Windows 上使用 Task Scheduler。

Terminal window
openchamber startup enable
openchamber startup status
openchamber startup disable

要保护 UI,请在启用服务时设置密码:

Terminal window
OPENCHAMBER_UI_PASSWORD='secret' openchamber startup enable

startup enable 会把当前环境快照保存到服务中,让启动行为更接近你在同一个 shell 中手动运行 openchamber。这会保留提供商 token、PATH、SSH agent 设置以及其他 CLI auth/config 环境变量。如果你想要最小化的服务环境,请使用 --no-env-snapshot

你仍然可以独立管理这个运行中服务的隧道:

Terminal window
openchamber tunnel start --port 3000
openchamber tunnel stop --port 3000

停止隧道不会重启服务或应用。

“OpenCode is restarting”

当服务器正在启动或重启时,OpenChamber 会显示 “OpenCode is restarting” 状态,并暂停请求直到服务器就绪。这在启动或重启后立即出现是正常的。如果它一直无法消失,请参阅 OpenCode 连接

相关内容