自有在线编程工具!还支持AI!NAS部署OpenCode
作为一名深度折腾威联通 NAS 的玩家,这几年我在 Docker 里跑过不少服务,密码管理器、自托管云盘、下载器基本都折腾过一遍。但最近装上的OpenCode,还是让我有了一种久违的"眼前一亮"。
我一开始关注它,原因其实很简单:我想要一个完全自主可用的网页版能用的Agent帮我写代码。现在市面上的写代码AI Agent很多,功能强的不少,但往往要把文件上传到第三方服务器;强调隐私的产品也有,但要么功能单一、要么部署门槛高。OpenCode吸引我的地方,就在于它把这些看似难以兼顾的点整合进了同一套系统里:所有操作在本地完成、文件绝不外发、功能却一点不少。
它不是传统意义上的在线OpenCode,更多的还是一套围绕需求构建起来的个人代码处理中心。一个开源、隐私优先且高度可定制的 AI 编码Agent——不仅支持 TUI(终端图形界面)模式,也支持通过 CLI、桌面应用和 VS Code 扩展插件运行。而且核心控制权始终握在自己手里。更难得的是,这个项目从诞生到现在,社区非常活跃,目前已经在 GitHub 上收获了近50k+颗星,拥有 650k+ 月活开发者下。对于 NAS 用户来说,这套思路非常对味。

OpenCode 最大的吸引力在于它的开放性和多场景支持,不仅支持完全本地化的模型部署,还支持 75+ 种 LLM 提供商,如 Anthropic、Github Copilot、OpenAI、Google、智谱 AI 等。使用起来更加灵活。
关于OpenCode

🔺什么是OpenCode?OpenCode能做什么?
OpenCode 是一款开源、终端原生的 AI 编程智能体。它通过统一终端界面,把代码生成、Bug 修复、项目重构、LSP 智能感知、多 AI 模型切换等数十种能力统一进同一套开发工作流中。文件和处理默认在本地完成,支持隐私优先的离线使用,也支持用户自行配置远程推理服务端,实现团队内部共享或通过 GitHub Actions 进行自动化协作。
简单来说,它最大的特点就是:把原本需要多个工具和反复切换窗口才能完成的开发任务,统一到一个终端入口里。
以前你可能要打开浏览器问 ChatGPT 怎么写代码,切回编辑器手动粘贴,再用 Linter 检查语法,用 Git 管理版本,用不同的 AI 工具做代码审查和重构……现在,这些操作都可以在 OpenCode 里一站式完成——代码生成、自动补全、错误诊断、类型检查、规划与构建模式、多会话并行、撤销回滚、一键共享、远程调用、模型自由切换……不说了,这实在是太强了!
项目地址:
Fhttps://github.com/anomalyco/opencode

🔺OpenCode
威联通Container Station安装OpenCode教程
OpenCode的安装和使用相对来说比较简单,使用 Docker 就可以直接安装,但是环境变量和配置文件有点多,新手的话看着有点头晕。
为什么要用Docker去跑OpenCode呢?
因为Docker 运行,这是一种开箱即用、与环境解耦的部署方式。它通过容器化技术,把 依赖隔离、跨平台可移植、CI/CD 集成、模型服务联动 等多项能力统一进同一套运行环境中。环境默认在容器内执行,不污染宿主机系统,也支持用户轻松接入 Docker Model Runner 等模型服务,实现开发环境的标准化与自动化流转。
简单来说,它最大的特点就是:把原本需要手动配置系统依赖、反复折腾环境冲突、写一堆适配脚本的麻烦事,统一到一个 Docker 命令里。
以前你可能要在本地装 Node.js、Python、Go 等一整套运行时,担心版本冲突、全局污染,换台机器又得重新配环境,想接入 CI 流水线还得写复杂的安装脚本……现在,这些操作都可以通过 Docker 运行 OpenCode 一站式解决——环境隔离、镜像分发、流水线集成、模型服务对接……

对于没有技术背景的同学而言,你也不用担心安装问题,我之前写过的一篇关于Docker安装Yantr应用商店的教程里提供了一键部署的应用模板,点一下鼠标即可完成部署,非常丝滑。

🔺如果你想快速部署一个OpenCode工具箱,又不想陷入繁琐的安装和配置过程,可以试试Yantr。
直接打开OpenCode应用模板,然后点击右下角的 “安装应用”,就可以一键安装了。
不过我还是建议用YAML方式安装,这样的可控性比较强。

🔺先打开NAS的文件管理器,在 docker 目录中(威联通默认为Container文件夹),创建一个新文件夹【opencode】,然后在opencode文件夹中再分别新建两个子文件夹config,workspace。
config – 用于持久化存储 OpenCode 的配置信息、API 密钥等
workspace – 用于存放你的代码项目,AI 将直接操作此目录下的文件

🔺Container Station 支持可视化的 Docker Compose 部署,操作直观且不易出错。
打开 Container Station,在左侧菜单栏点击 「项目」(或「应用程序」)。
点击右上角 「创建」 → 「创建项目」,进入项目配置页面。
设置 项目名称(如 opencode-server),创建方式 选择「手动输入」或「上传 Docker Compose 文件」,然后点击 「下一步」。
在 Docker Compose 配置框中粘贴以下 YAML 代码:
version: '3.8'
services:
opencode:
image: ghcr.io/anomalyco/opencode:latest
container_name: opencode
restart: unless-stopped
# 以 Web 模式启动,注意必须使用 --hostname 而非 --host
entrypoint: ["opencode", "web", "--hostname", "0.0.0.0", "--port", "3000"]
ports:
- "32774:4096" # 左侧可换成 NAS 上未被占用的端口
volumes:
- /share/Container/opencode/config:/root/.opencode # 配置文件持久化
- /share/Container/opencode/workspace:/workspace # 代码工作目录
environment:
- WORKDIR=/workspace
# 国内 npm 加速,提升依赖安装速度
- NPM_CONFIG_REGISTRY=https://registry.npmmirror.com
# Git 用户信息,避免 AI 提交代码时报错
- GIT_AUTHOR_NAME=opencode
- GIT_AUTHOR_EMAIL=bot@opencode.ai
# 如需通过代理访问 OpenAI/Google 等模型 API,取消注释以下两行
# - HTTP_PROXY=http://192.168.x.x:7890
# - HTTPS_PROXY=http://192.168.x.x:7890
这里简单说一下几个关键项:
32774:4096中,左侧的32774是映射到 NAS 上的访问端口,可以按自己习惯修改。
restart: unless-stopped 表示 NAS 重启后容器会自动恢复运行。
安装完成后,通过 NAS 的 IP 加端口访问即可。

🔺安装完之后,你可以看到有一个程序已经在运行了。

🔺点进去看看端口,打开你的NAS网址加这个端口号,比如我的就是http://192.168.192.141:32774/。
opencode能干什么?为什么我会觉得它值得装?

第一,统一处理代码,省去了每台都装IDE和配置环境的问题
opencode没有复杂的本地软件,也没有什么在线服务注册要求。它的逻辑很直接:所有的处理任务都直接在NAS上完成,我手里的好几台电脑就完全没必要每一台都装IDE和配置环境了。只需要在一台NAS上装opencode,那么内网所有的设备都可以用同一个设备去生成和调试代码。

🔺这种设计最大的好处,就是减少了多设备协同的成本。很多时候,真正拖慢效率的不是写代码,而是先汇总统一到同一台电脑下。opencode把这个动作简化了,你直接打开网页,系统再通过统一的管理自动组织内容,根本不用担心你的电脑性能不够,对于平时碎片化代码文件比较多的人来说,这种体验很轻松。
第二,免费AI供应商,让人更安心
这是我最看重的一点。opencode的核心思路是:让所有人都能安心用自己的模型或者无门槛去编程。

🔺也就是说,就算你没有买大模型的API服务,OpenCode也内置了一部分免费的模型给你用,普通的解决问题肯定是够了,如果想连续解决问题,我觉得不如买DeepSeek的API,一百块充进去能玩很久。

🔺或者你可以用opencode自己的zen服务去一站式解决写代码的问题。

🔺对于自托管用户来说,这种安全感非常重要。毕竟很多人折腾 NAS,不只是为了“能用”,更是为了把数据主权重新掌握在自己手里。
OpenCode整体体验明显偏向离线优先。日常使用时,代码的编辑、搜索都很顺畅,不会有那种“每一步都在等云端返回”的割裂感。即便网络状态一般,或者临时断网,基础记录和查看依然不受太大影响。
对于经常切换设备、切换网络环境的人来说,这一点非常实用,毕竟不是每一个设备都有足够的能力去装的。
第三,多Agent协同

🔺在日常工作中,我经常需要处理包含敏感信息的代码文件,并且要在多台设备(电脑、平板、手机)之间协同编辑与管理。OpenCode作为一套完整的本地代码管理编译工具集,完美解决了我的需求:

🔺多AI模型自由选择切换
通过内置的AI可视化界面切换,我可以对多AI模型进行快速切换,不需要打开各种网页。

🔺OpenCode 内置了两个可以用密钥切换的代理。
build - 用于开发工作的默认全访问代理
plan - 仅读代理,用于分析和代码探索,默认拒绝文件编辑,运行 bash 命令前先征得许可,非常适合探索不熟悉的代码库或规划变更让我能快速从一份长文档中抽取出关键代码。

🔺多终端跑OpenCode
依托开源,OpenCode支持多个终端跑,桌面端支持 macOS, Windows,和 Linux 的 Beta 版。支持Github集成,支持VS Code,Cursor,Zed,Windsurf,VSCodium扩展。

🔺企业版部署OpenCode
开源方案一般是没什么服务的,但是OpenCode居然还有完整的企业部署方案,我就觉得很厉害了。小团队用这个搞搞代码还是方便的。
实际用下来,它适合谁?
部署完成之后,OpenCode给我的第一感觉就是:我终于不用把每一台电脑里面都装IDE软件,并且还跟部署环境斗智斗勇了。
没有复杂层级,没有太多分散注意力的入口,核心就是写代码。页面看起来简单,但这种简单并不是功能少,而是把重点放回到功能本身。如果你平时就有下面这些需求,那OpenCode会很适合你:
你想把数据和代码安全,文件处理和分发放到同一个系统里;
你在意数据和代码隐私,不想把核心内容默认放在第三方云端处理;
你本身就有NAS,已经习惯在威联通上跑各种 Docker 服务;
你希望工具足够轻、足够快,不想被复杂结构拖慢使用效率。对我来说,OpenCode
不是那种功能堆得特别夸张的AI软件,但整体体验非常顺:写代码顺、搜索顺、管理顺,隐私边界也更让人安心。
结语
OpenCode给我的整体感觉,可以概括成一句话:
它不是在做一个代码管理编译服务,而是在做一套更符合自托管思路的个人代码系统。
它把代码、环境、AI统一进一套逻辑里,让原本分散在多个设备中的代码和数据重新聚合到一起;同时又通过网页端加密、离线优先、P2P 同步和备份,把数据控制权尽量保留在用户自己手里。
如果你本来就有 NAS,也习惯在上面跑 Docker 服务,那么OpenCode确实值得你亲自装起来试试。对于在意 隐私、统一管理和数据主权 的人来说,它会是一种很有意思的选择。
如果你想看更多 NAS、自托管Docker等相关玩法,也欢迎继续关注。没写过的内容,也可以评论区留言交流。
本篇就到这里,我们下篇再见。
