大家好,我是程序员鱼皮。
最近 DeepSeek Harness(简称 DSH)真是火得一塌糊涂,有种今年春节那会儿 OpenClaw 时刻的感觉。
截止发文,DSH 刚好发布一个星期,GitHub Stars 已达 160k,插件生态也是出奇的热闹。社区自发整理的 awesome-dsh-plugin 精选列表收录的插件已经超过上千个了。
![]()
多模型接入、定时任务、代码审查、桌面宠物、摸鱼小游戏、股票看盘等等,各种实用和娱乐插件应有尽有。
![]()
真应了官方的口号「一切皆插件」,自由度高得离谱。
不过痛点也随之而来了……
DSH 默认情况下只有你自己能够访问。你精心装了一堆插件、调试好了自己的工作区,想和团队共享怎么办?总不能每个人自己重装一遍吧?
如果能让团队在同一个项目空间里协作就好了,大家都可以指挥 AI 干活,项目进度、会话记录、插件环境全都同步。
还有一个更常见的场景。出门在外,突然想看看家里电脑上 Vibe Coding 的项目跑到哪一步了、看看 AI 有没有乱来,好及时调整开发方向。
又或者你在地铁上,突然想到个好点子,想赶紧让 AI 帮你验证一下。结果手里只有一台手机,无奈只能先把点子记下来。
好在 DSH 天生就是跑在 Web 上的,只要把它部署到服务器上 7x24 小时运行,这些问题全都能解决。
这篇文章,我会手把手教大家把 DeepSeek Harness 部署到服务器上,实现随时随地、多设备访问。
依然是保姆皮教程,点个收藏,咱们开始~
DSH 服务器部署教程
首先,我们需要准备一台云服务器。这篇教程所用的服务器配置为 2C 2G,也就是 2 个 CPU 核心加 2 GB 内存,操作系统为 Debian 12.15,实测刚好能稳定运行 DSH。
建议大家使用不低于这个配置的服务器,配置太低可能会导致 DSH 运行不稳定。
1、连接到服务器
如果你用的是腾讯云、阿里云、华为云等主流大厂的云服务器,可以直接通过网页控制台登录服务器。
比如阿里云服务器,支持通过 Workbench 远程连接:
![]()
除了网页登录,你也可以通过 SSH 连接到服务器,大家可以查阅对应云服务商的官方文档了解具体操作。
成功连接服务器后,我们接下来需要安装一个服务器管理面板,省的在小黑框里操作。常见的有宝塔面板、1Panel 面板等。
2、安装 1Panel
这里我们以 1Panel 为例。1Panel 是一款现代化的开源 Linux 服务器运维管理面板,界面简洁好用,而且内置了应用商店,可以一键安装各种服务。
![]()
在服务器的终端中,运行 1 行命令就能安装 1Panel:
bash -c "$(curl -sSL https://resource.fit2cloud.com/1panel/package/v2/quick_start.sh)"
安装的第一步需要选择语言,我们输入 2 并按回车键来选择中文。
![]()
接下来要选择安装目录,直接回车,使用默认路径 /opt 就行。
然后系统会问你是否安装 Docker,输入 y 确认。这一步可能会因为网络环境稍慢一些,耐心等待几分钟就好。
![]()
Docker 安装完成之后,来到安装面板的最后一个环节,配置面板信息。
![]()
先是 配置镜像加速。国内网络访问 GitHub、Docker 等资源会比较慢,所以有必要开启镜像加速,输入 y 并回车即可。
接着 设置 1Panel 的访问端口。这个端口会拼接在你的服务器 IP 地址后面,用来访问管理面板。举个例子,假设服务器 IP 是 114.51.41.xx,你把端口设置成 9810,那么访问面板的地址就是 114.51.41.xx:9810。
你可以直接回车使用 1Panel 随机生成的端口号,也可以自己设置一个好记的数字。不过要注意避开一些常用服务已经占用的端口号,我给大家整理成了一张图片方便参考:
![]()
接下来是 设置 1Panel 安全入口,相当于访问管理面板时额外需要的一个口令,也是拼接在地址后面的。比如你设置成 ikun,那根据上面的例子,访问管理面板的完整地址就是 114.51.41.91:9810/ikun。这样一来,就算别人知道了你服务器的 IP 和端口,没有安全入口也进不去。
这一步同样可以直接敲回车使用随机入口,但我强烈建议你设置一个自己记得住的。
最后是 设置面板的用户名和密码,这一步就不用多说了,设置完之后就算有人知道了安全入口,也会被用户名和密码挡在外面。三重防护,安全拉满。
![]()
3、开放防火墙端口
这一步也至关重要,只有开放了防火墙端口,你才能从外部正常访问服务器上的服务。
以阿里云为例,我们进入云服务器 ECS 的管理后台,找到「安全组」,在「入方向」里点击「增加规则」。如果你用的是其他厂商的服务器,也是找到类似「防火墙」或「安全组」的设置页面。
![]()
访问来源选择 0.0.0.0/0(任何位置),然后在访问目的端口中填入刚才为 1Panel 设置的端口号。
这里可以顺便把后面 DSH 要用到的端口也一起加上,比如 10443。你也可以自定义,只要不和上面的避让清单冲突就行。
全部填好之后点击提交。
恭喜你,看到这里你已经打败了 66.66% 的同学!
![]()
前置工作全部完成,接下来我们正式安装 DeepSeek Harness。
4、安装 DSH
在浏览器中输入 IP 地址:端口号/安全口令 来访问 1Panel 管理后台。
进入首页后,你可以看到服务器当前的运行状态和内存占用。
![]()
点击左侧菜单进入应用商店,搜索 DeepSeek Harness,能看到 1Panel 已经内置了这个应用,直接点击安装。
![]()
安装界面中有几个需要注意的配置项。
HTTPS 端口:填刚才在防火墙安全组里为 DSH 分配的端口号,比如
10443访问地址:填你服务器的公网 IP 地址
Web 用户名和密码:就是之后访问 DSH 时需要的登录凭证
这里科普一下,DSH 本身其实是没有内置登录认证的,它的 Web 服务器甚至故意拒绝绑定到 0.0.0.0(也就是公网可访问的地址),就是为了防止被未经授权的人访问。而 1Panel 应用商店里的这个版本集成了 Caddy 反向代理来提供 HTTPS 加密和用户名密码认证,所有外部访问都必须先通过 Caddy 鉴权才会转发给 DSH,安全性有了保障。
最后,勾选高级设置,打开端口外部访问,然后点击右下角的确认按钮开始安装。
![]()
耐心等待安装完成后,我们就可以通过 IP:10443 来访问 DeepSeek Harness 了。
由于我们还没有配置自己的域名和正式的 HTTPS 证书(1Panel 用的是自签名证书),浏览器会提示安全性问题,这是正常现象,无视风险继续访问就行。
![]()
输入刚才设置好的 Web 用户名和密码就可以登录了:![]()
进入 DSH 之后,第一件事就是配置模型。你可以直接填入 DeepSeek 的 API Key,也可以在设置里切换到其他模型提供商。DSH 兼容 OpenAI 接口格式,所以市面上大多数兼容 OpenAI API 的模型服务都能直接接入。
到 DeepSeek 开放平台获取 API Key:https://platform.deepseek.com/api_keys
还有一点需要注意。因为 DSH 是运行在云端服务器上的,所以无法像在本地一样直接打开你电脑上的项目文件夹。你需要在工作区里手动创建项目目录,也可以让 DSH 用 git clone 把 GitHub 上的项目拉取到服务器上。
首次体验的话,建议大家先用一个测试项目,不要直接指向生产环境的代码仓库,毕竟 Agent 是有文件读写和命令执行权限的。
![]()
到这里,所有准备工作就完成了,可以开始体验多设备访问了。
5、体验演示
理论上,只要服务器配置扛得住,同时访问的设备数量是不受限制的。我自己用三四台设备同时访问也没有任何压力,而且项目会话、聊天记录、插件环境全部都是实时同步的。
这里我装了坤坤的主题皮肤,可以看到不管是手机还是电脑,打开 DSH 之后皮肤都是同步的。
![]()
文本的流式输出也是完全同步的,一台设备上正在生成的内容,另一台设备同步就能看到。
手机端体验的话,推荐装一个移动端 UI 适配插件 mexiaosqwq/dsh-web-mobile,它会在窄屏下自动把侧边栏收成抽屉、会话区铺满全宽,交互体验会好很多。
![]()
一行命令就能安装:
dsh plugin --profile web add github:mexiaosqwq/dsh-web-mobile
如果你想快速上手 DeepSeek Harness,学习基础用法,可以阅读我之前写的 。
6、域名绑定
用 IP + 端口号的方式虽然能够访问 DSH,但不够方便也不够安全。如果你手头有域名的话,推荐给 DSH 绑定一个域名,这样不仅好记,还能配上正式的 HTTPS 证书。
操作起来并不难,首先进入 1Panel 左侧菜单的「网站」页面,1Panel 会提示你安装 OpenResty,点击去商店安装即可。
![]()
所有设置保持默认即可,直接点击安装。
![]()
安装完成后,再次回到左侧菜单的「网站」页面,点击创建。
![]()
这里可以选择「一键部署」或「反向代理」来完成域名绑定。
![]()
![]()
光在 1Panel 里配置还不够,你还需要到云服务商的域名控制台,给服务器 IP 配置 DNS 域名解析。
在域名解析设置里添加一条记录,记录类型选择 A,主机记录(名称)填 dsh,记录值填你的服务器公网 IP。
![]()
保存之后等待解析生效,再用完整的域名地址访问就能看到 DeepSeek Harness 了。
需要注意的是,如果 DSH 是部署在国内的服务器上,需要先完成 ICP 备案,才能正常进行域名访问。没有备案的话,运营商会拦截请求,页面是打不开的。
![]()
为什么选择服务器部署?
看到这里,有同学可能要问了:Vercel、Cloudflare、Netlify 这些平台这么方便,还不用自己准备服务器,为什么不把 DSH 部署在上面呢?
因为 DSH 不是一个单纯的前端网页,它是一个需要长期存活、持续读写文件、不断执行脚本命令的「AI 员工」,需要一个稳定的运行环境作为它的家。
而 Vercel、Cloudflare、Netlify 这些平台主打的是 Serverless 无服务器架构。
![]()
注意,Serverless 并不是真的没有服务器,而是你只有服务器的临时使用权,服务器由平台统一管理和调度,让你用起来几乎不需要自己通过命令行来操作服务器,更方便。
为什么说是临时使用权呢?
代码部署到 Serverless 平台后,只有收到请求的时候才会启动一个运行实例,请求处理完就销毁。这就是它的核心设计理念「用完即焚」。
这个理念本身很适合 API 接口、静态网站这类「来一个请求处理一个」的场景,但对 DSH 来说完全不适用。
DSH 需要持久的文件系统来保存项目代码和会话记录,需要真正的终端来执行 shell 命令,还需要长时间运行来处理复杂的多步任务。而 Serverless 平台的文件系统是只读或临时的,没有持久化终端,还有严格的执行超时限制,函数跑完就销毁,根本没法满足这些需求。
所以,最好还是把 DSH 老老实实部署在一台有完整操作系统的服务器上。
局域网部署
如果你还没有云服务器,或者想让所有 AI 生成的产物都保留在本地,局域网部署也是一个不错的选择。
使用局域网部署 DSH 后,可以在家里的设备之间共享,一台主力机跑着 DSH,躺床上用平板也能连过去查看 AI 的工作进度,全家设备共用一套环境。
如果你在办公室搭了一套共享的 DSH,同事们在同一个 Wi-Fi 下就能访问,不需要每个人都装一遍。
听上去还是很实用的吧,具体怎么操作呢?
由于 DSH 的插件生态太丰富了,已经有不少插件能很好地解决局域网访问这个需求。
社区里有一个很火的全家桶插件 dsh-web-ui,不仅内置了局域网远程访问功能,还提供了任务看板、Git 图谱、移动端远程控制、皮肤中心等一整套功能增强。这个项目在 GitHub 上已经有几千 Stars,大家有兴趣可以去体验一下。
![]()
如果你不想装全家桶,只需要局域网访问功能的话,也可以单独安装对应的插件。
我根据不同的使用场景,把相关的插件整理成了一张图片,大家按需选择就好:
![]()
这里补充一个技术细节。DSH 默认只监听 127.0.0.1 本机回环地址,官方在 CLI 层面故意拒绝了 --host 0.0.0.0 的绑定请求,就是为了防止把 Agent 的命令执行能力直接暴露到网络上。
上面这些局域网插件的工作原理,就是通过 bundle patch 在插件层面把 webserver 绑定到 0.0.0.0,同时注入 crypto.randomUUID 的 polyfill 来解决非 HTTPS 环境下浏览器 API 缺失的问题。虽然方便,但局域网访问意味着同网络下的任何设备都能连上你的 DSH,所以只建议在家庭、公司这种可信的内网环境中使用。
最后哔哔
看到这里,你应该能感受到 DeepSeek Harness 有多开放。
除了「一切皆插件」之外,DSH 本身选择 Web 形态而不是桌面客户端,意味着它天然支持远程访问、多设备同步、团队协作,这种开放性是那些只能在本地跑的 Agent 工具不具备的。
如果你想随时随地使用 DSH、跟团队共享,又或者是担心 AI 破坏了你自己电脑的文件,都可以跟着这篇教程来试试云端 DSH。
OK 就分享到这里,本文会收录到我免费开源的,上千张图、几十万字,带你从 0 开始快速学会 AI 编程,做出自己的产品、跑通变现全流程,一次拿捏。
![]()
我是鱼皮,持续分享 AI 编程干货,觉得有用的话记得点赞收藏和关注~
欢迎在评论区分享更多 DeepSeek Harness 的玩法。
特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.