mirror of
https://github.com/okxlin/appstore.git
synced 2026-09-22 08:00:59 +00:00
3.9 KiB
3.9 KiB
OpenCode Workstation
应用简介
OpenCode Workstation – 可持久化的多智能体开发运行环境。
英文说明:OpenCode Workstation – persistent multi-agent dev runtime.
部署说明
- 本应用使用 Docker Compose 在 1Panel 中部署。
- 应用分类:工具。
- 支持架构:amd64。
- 可选版本:
latest。 - 安装后按应用表单中的端口访问 Web UI、SSH 或对应服务。
端口
| 变量 | 说明 | 默认值 | 必填 |
|---|---|---|---|
| PANEL_APP_PORT_HTTP | Serve 端口 | 4096 | 是 |
| PANEL_APP_PORT_ACP | ACP 端口 | 8765 | 是 |
数据持久化
| 变量 | 说明 | 默认值 | 必填 |
|---|---|---|---|
| APP_DATA_DIR_1 | 工作区挂载目录 | ./data/workspace | 是 |
| APP_DATA_DIR_2 | HOME 配置挂载目录 | ./data/home-config | 是 |
| APP_DATA_DIR_3 | HOME Share 挂载目录 | ./data/home-share | 是 |
| APP_DATA_DIR_4 | Agents HOME 挂载目录 | ./data/home-agents | 是 |
| APP_DATA_DIR_5 | Claude HOME 挂载目录 | ./data/home-claude | 是 |
| APP_DATA_DIR_6 | OpenCode HOME 挂载目录 | ./data/home-opencode | 是 |
| DOCKER_SOCK_SRC | Docker 套接字路径(留空禁用) | /var/run/docker.sock | 否 |
| CUSTOM_ENV_FILE | 自定义环境变量文件 | ./data/custom.env | 否 |
升级或迁移前,请在 1Panel 中备份上述数据目录。
配置项
| 变量 | 说明 | 默认值 | 必填 |
|---|---|---|---|
| OPENCODE_RUNTIME_MODE | 运行模式 | serve | 是 |
| OPENCODE_BOOTSTRAP | 启动时安装 OpenCode | 1 | 是 |
| OMO_AUTO_INSTALL | 启动时自动安装 oh-my-opencode | 1 | 是 |
| DCP_INSTALL | 安装 DCP 插件 | 1 | 是 |
| OMO_CLAUDE_MODE | Claude 安装模式 | no | 是 |
| OMO_GEMINI_MODE | Gemini 安装模式 | no | 是 |
| OMO_COPILOT_MODE | Copilot 安装模式 | no | 是 |
| OMO_INSTALL_ARGS | 额外安装参数 | - | 否 |
| OPENCODE_NPM_PACKAGE | OpenCode 安装包 | opencode-ai | 否 |
使用说明
内部升级说明
重建容器会更新镜像层,但是否重新安装 / 刷新 OpenCode 与 oh-my-opencode,取决于当前表单开关和持久化目录状态。当前镜像不再预装 GPT Unlocked。
常见场景:
- 镜像层更新:在 1Panel 中重建容器
- 刷新 OpenCode 本体:进入容器执行
/app/scripts/update-opencode-userland.sh - 刷新 oh-my-opencode 行为:重建容器,或手动重新执行
bunx oh-my-opencode install --no-tui ... - 额外环境变量:升级脚本会确保
CUSTOM_ENV_FILE存在;后续可直接编辑该文件追加自定义变量
升级迁移
- 从旧版本升级时,镜像首次启动会从生成的全局配置
~/.config/opencode/opencode.json(或.jsonc)中移除opencode-gpt-unlocked及其experimental.refusal_patcher配置。 - 迁移是幂等的,只清理上述已废弃条目,不删除其它 provider、model、MCP、插件配置或用户覆盖文件。
- 镜像会将 OMO 的
~/.omo桥接到持久化配置目录~/.config/.omo,避免 OMO 刷新时跨挂载点迁移失败;旧.omo内容会先复制并保留备份。 - 旧
.env中的GPT_UNLOCKED_*键不再由新 Compose 的显式环境映射读取;若它们仍留在custom.env,虽然可能随通用环境文件进入容器,也不会被镜像读取或注册。升级前仍应按上面的数据目录范围完成备份。 - 持久化目录和
CUSTOM_ENV_FILE由生命周期脚本限制为版本目录下的./...相对路径;若旧配置使用绝对路径或路径穿越,升级会停止并保留原数据,迁移路径后再重试。
注意事项
- 不要把真实密钥硬编码进
opencode.user.json,优先使用环境变量 ~/.config/opencode/opencode.json是生成产物,不建议长期手工维护- 若不需要容器内调用 Docker,请将 Docker Socket 路径留空