腾讯云部署DeepSeek Harness与dsh-market插件市场完整指南
2026/9/24 21:56:35 网站建设 项目流程

先说点实在的。我最早是在自己笔记本上跑 DeepSeek Harness 的,装插件、调智能体编排都挺顺手,可一旦合上盖子下班,任务就跟着断了;想让同事一起用,还得折腾内网穿透。后来干脆把它搬到腾讯云上,配合 dsh-market 插件市场统一管理插件,整体体验顺畅了很多。这篇教程就把我在腾讯云环境下安装 DeepSeek Harness 并搭好 dsh-market 插件市场的完整过程写出来,从服务器配置选择、安全组放行,到插件搜索安装、模型接入和多智能体编排,尽量每一步都说到位。适合想用云服务器跑 Harness、又不想一遍遍查资料的新手,也适合本地已经跑通、准备迁移上云的朋友参考。

1. 为什么把 Harness 放到腾讯云上跑

1.1 本地部署会遇到的三道坎

DeepSeek Harness 本身是个本地优先的工具,装在本机跑没有任何问题,但真用起来会有几个绕不开的痛点。

第一是“关机即失联”。我经常晚上写好一批智能体任务,让它们凌晨自动执行,本地电脑一休眠任务就断了,第二天醒来发现啥也没跑。把服务放到云服务器上,7乘24小时在线,编排任务才能真正“无人值守”。

第二是“访问不方便”。本地跑起来之后,如果你在办公室想连家里的服务,要么搞内网穿透,要么忍受各种奇怪的网络问题。腾讯云服务器有固定公网IP,浏览器直接访问公网地址加端口就行,手机、平板、办公电脑都能连。

第三是“依赖环境太乱”。Harness 会依赖 Python、Node、Git,还有一堆插件各自带着自己的依赖。把这些都堆在个人电脑上,指不定哪天和别的开发环境打架。云服务器随时可以重置系统,折腾坏了大不了重来,心理负担小得多。

1.2 服务器配置怎么选

如果你的用途主要是跑 Harness 的编排逻辑、调用 DeepSeek 官方 API,那对服务器性能要求真不高。

我建议直接给结论:第一台服务器选2核4G、带宽5Mbps、系统盘50G起步。这个配置跑 Harness 本体、挂几个插件、日常处理多智能体任务完全够用。腾讯云的轻量应用服务器或者CVM都行,轻量服务器更便宜,管理界面对新手更友好;CVM的扩展性更好,后面想加GPU实例、调整网络配置更方便。

那什么情况下需要更高配置呢?如果你打算在服务器上直接加载本地模型,比如通过 Ollama 跑 7B 级别的小模型,2核4G就明显不够了,推理速度会很感人。这种情况建议4核16G以上,最好用带GPU的实例,不然一个请求可能要等几十秒甚至更久。我的建议是:本地模型放在自己电脑上玩,云服务器专心负责 Harness 的编排和调度,两边通过 API 互通,性价比最高。

1.3 安全组和端口规划

这一步很多人第一次搞的时候会卡很久,明明服务启动成功了,外网就是访问不了。核心原因通常在腾讯云的安全组上。

腾讯云有两层访问控制,容易搞混。CVM用的是安全组,轻量应用服务器用的是防火墙,但作用类似:默认只放行了22端口(SSH),其他端口一律不让外面进来。所以你启动 Harness 的 Web UI 之后,必须手动放行对应端口。

以我自己为例,我规划了三个端口:

端口用途说明
22SSH登录默认已放行
8000Harness Web UI浏览器访问界面用
11434Ollama API如果服务器上要跑本地模型才需要

在腾讯云控制台找到你的实例,进入“防火墙”或“安全组”页面,添加入站规则,来源填0.0.0.0/0(表示允许所有IP访问),协议端口填TCP:8000,保存之后生效是秒级的。如果你不想让所有人都能访问 UI,可以把来源限制为你自己的家庭宽带IP,但家庭宽带的IP一般会变,到时候又要改规则。我图省事直接放开了,然后在 Harness 前面再加一层带密码的访问控制。

2. 环境准备:干净服务器需要补齐的基础工具

2.1 系统初始化与基础工具安装

我第一次上腾讯云的时候,选了 Ubuntu 22.04 LTS,因为Python 3.10是系统自带的,社区资料也最多,踩坑的概率最低。

登录服务器之后,第一件事是更新软件源并装基础工具。用 SSH 连接上服务器,然后执行:

sudo apt update && sudo apt upgrade -y sudo apt install -y git curl wget unzip python3 python3-venv python3-pip

Git 用来拉取项目代码和插件仓库,curl 和 wget 用来下载安装包,Python 是 Harness 的运行基础。如果你的服务器是 CentOS 或者其他发行版,用对应的包管理器(yum 或者 dnf)替换掉 apt 即可,但我不太推荐 CentOS,因为 Python 版本普遍偏老,后面装依赖容易遇到坑。

如果你的 Ubuntu 版本比较旧,Python 版本低于 3.10,我建议直接换官方源升级系统,或者用源码编译安装新版 Python,但说实话没必要折腾,直接新建一台 Ubuntu 22.04 的机器最快。

2.2 Python 环境用 venv 还是 Conda

很多新手上来就想装 Anaconda 或者 MiniConda,觉得这样管理环境方便。我不反对,但云服务器上我更推荐直接用 Python 自带的venv模块。

原因很简单:Harness 的依赖其实不复杂,一个虚拟环境完全够用。Conda 装起来体积好几 GB,而且默认源在国外,国内服务器下载慢得让人崩溃。venv 是 Python 内置的,零额外安装,用完就删,干净利落。

后面如果需要给 Harness 装各种插件,插件的依赖也统一装到这个 venv 里,不会污染系统 Python。如果你已经装了 Conda,也不影响,用conda create -n harness python=3.10创建环境也能跑,只是我个人的体会是 venv 更轻量、更好维护。

如果你想换国内 pip 源(强烈建议,下载速度快很多),执行这条命令:

pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple

实测在腾讯云上用清华源装依赖,速度比默认源快十倍不止。

2.3 把安装包传到服务器的几种方式

环境准备好之后,需要把安装包传到服务器上。这一步有不少新朋友卡住,这里把常用的几种方式都列一下。

第一种,直接用腾讯云控制台的 WebShell。控制台页面里点击“登录”,进入网页版终端后,很多版本的 WebShell 自带“上传文件”按钮,直接把本地下载好的压缩包传上去就行,适合一次性上传。缺点是传大文件偶尔会断,重新传就好。

第二种,用 SCP 命令,这个我平时用得最多。在本地电脑上执行:

scp -i ~/.ssh/tencent.pem ./dsh-server-linux-amd64.tar.gz ubuntu@你的公网IP:/home/ubuntu/

Windows 用户如果不想敲命令,用 WinSCP 或者 Xftp,图形界面上传,逻辑一样。

第三种,直接在服务器上git clone。如果你要装的是开源项目,直接克隆仓库是最省事的。Harness 的官方代码托管在 GitHub,服务器上先装好 Git,然后克隆对应仓库。注意国内网络访问 GitHub 偶尔不稳定,如果 clone 到一半断开,重试几次,或者把仓库先下载到本地电脑,再通过前面两种方式传上去。

3. DeepSeek Harness 主体安装与验证

3.1 下载与目录规划

Harness 的安装包分桌面版和服务器版,云服务器上我们用的是命令行版。下载地址以官方 GitHub Releases 页面为准,选择对应 Linux 架构的版本。

下载完成之后,我习惯把 Harness 安装在/opt/deepseek-harness目录下,而不是直接放在用户目录。这样做的理由是:/opt是 Linux 系统约定放第三方软件的目录,权限清晰,后续用 root 启动服务时不会因为目录权限问题各种奇葩报错。

如果你有洁癖,也可以放在~/deepseek-harness,但注意后面配置 systemd 服务时,工作目录和用户权限要对应改好。

解压安装包:

sudo mkdir -p /opt/deepseek-harness sudo tar -xzf dsh-server-linux-amd64.tar.gz -C /opt/deepseek-harness cd /opt/deepseek-harness

解压后目录里一般有binconfigpluginsdocs这几个子目录,bin 目录下就是 Harness 的主命令,通常叫dsh

3.2 创建虚拟环境并安装依赖

Harness 的有些插件依赖 Python 包,为了隔离环境,建议在 Harness 根目录下建立一个 venv:

cd /opt/deepseek-harness sudo python3 -m venv .venv

然后根据安装包里的requirements.txt安装核心依赖。如果安装包没有附带这个文件,通常在代码仓库的根目录下能找到:

source .venv/bin/activate pip install --upgrade pip pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple

这一步是大多数报错的重灾区。常见的坑是:requirements.txt 里某个包拉不下来、某个包编译不过去、或者因为网络问题下载超时。给三个救急建议:

  • 换国内 pip 源,速度快很多;
  • 如果某个包编译失败,安装系统依赖再试,比如sudo apt install build-essential
  • 下载超时就重试,pip 有时需要多试两次。

3.3 首次启动与配置

依赖装好之后,先把基础配置写好。Harness 会读取~/.dsh/config.yaml作为默认配置,首次启动时如果没有这个文件,它会自动生成一个样例配置。

启动命令我建议显式指定监听地址和端口:

cd /opt/deepseek-harness source .venv/bin/activate dsh serve --host 0.0.0.0 --port 8000

这里有一个很多新手容易踩的坑:不指定--host 0.0.0.0,默认监听在127.0.0.1,也就是只有服务器本机能访问,外网再怎么放行安全组也没用。遇到 Web UI 打不开的情况,第一件事检查监听地址是不是0.0.0.0

启动成功后,命令行会打印一行访问地址,比如http://0.0.0.0:8000。这时候你在本地浏览器输入http://你的公网IP:8000,就能看到 Harness 的界面了。如果打不开,先去看安全的组设置,再确认防火墙有没有开,最后检查监听地址,这三步能解决九成的访问问题。

3.4 版本升级与回退技巧

Harness 迭代很快,我遇到过几次升级之后插件不兼容的情况。这里分享一个特别有用的经验:升级前先备份~/.dsh目录。

cp -r ~/.dsh ~/.dsh.bak

升级版本,最简单的方式是去 GitHub Releases 页面下载新版本,重复解压覆盖;如果用 pip 安装的,执行:

pip install --upgrade deepseek-harness

如果你遇到新版不稳定,想回退到指定版本,比如网上很多人提到的 v0.1.5-rc.2,可以这样操作:

pip uninstall deepseek-harness pip install deepseek-harness==0.1.5rc2

注意一下版本号的写法,rc2在 pip 里是rc2而不是-rc.2,直接搜pip index versions deepseek-harness可以看到完整版本列表。如果你用的是官方二进制安装包,那就去 Releases 页面找到对应历史版本重新下载安装。备份目录在回退之后要恢复回去,否则插件配置全部被初始化,之前辛辛苦苦调好的智能体编排就全白费了。

4. dsh-market 插件市场:初始化、搜索与安装

4.1 dsh-market 到底是什么

如果你用过 VS Code 或者 Chrome,就很好理解 dsh-market 了。Harness 本体只提供框架和基础能力,真正好用的搜索、网页抓取、记忆管理、定时任务、绘图这些功能,都通过插件的形式提供。dsh-market 就是给 Harness 用的“插件商店”,通过它你可以搜索、安装、卸载插件,甚至可以打包自己的插件分享给别人。

我最初在本地用 Harness 的时候,插件都是手动从 GitHub 下载然后解压到目录里,版本一多就乱套了。后来上了 dsh-market,一条命令就能管理所有插件,省心不少。

4.2 初始化插件市场源

安装 Harness 之后,dsh-market 的 CLI 可能已经内置,也可能需要主动安装,以你的 Harness 版本为准。验证方法:

dsh market --help

如果提示没有这个命令,去官方文档找 market 插件的安装包,安装到 Harness 的插件目录即可。

初始化市场源,就是告诉 Harness 去哪里拉取插件列表。命令类似:

dsh market registry add official https://market.example.com/index.json

这里的地址是示例,实际以官方文档公布的市场地址为准。添加完成后,可以查看已连接的源:

dsh market registry list

如果你自己搭了插件源,或者想把某台内网机器作为离线源,可以再添加一个本地地址,比如:

dsh market registry add local /opt/plugin-repo/index.json

4.3 搜索、安装、卸载插件的完整命令

市场源配置好之后,插件操作就很顺了。先用搜索命令看看有哪些插件可用:

dsh market search web

这条命令会把插件名称、简介、版本号列出来。我自己的习惯是先搜索,过滤出我关心的关键词,再决定装哪个,不建议一上来就装一大堆。

安装插件:

dsh market install plugin-name

安装完成后,用下面的命令确认是否安装成功:

dsh market list

卸载插件:

dsh market remove plugin-name

定期同步插件源:

dsh market update

这一套命令用下来,插件的全生命周期就覆盖了。重点提醒:插件安装时如果报依赖错误,通常是缺 Python 包或者 Node 运行时,日志里会明确提示缺什么,照着装就行。

4.4 插件目录结构与手动打包插件

用 dsh-market 安装的插件,默认存放在~/.dsh/plugins/插件名/目录下。每个插件目录里必须有一个manifest.json,用来描述插件的元数据。

一个简单的 manifest 长这样:

{ "name": "hello-agent", "version": "0.1.0", "description": "一个示例插件", "entry": "main.py", "requires": ["requests"] }

如果你想写一个自己的插件,只需要建一个目录,放好 manifest.json 和入口文件,然后用命令打包:

dsh market pack ./hello-agent

打包后会生成一个.dshx文件,这个文件就是可安装的插件包,你可以放到自己的静态服务器上作为私有插件源,也可以分享给朋友用。

手动安装一个本地插件包的命令是:

dsh market install ./hello-agent.dshx

说实话,插件开发门槛不算高,有 Python 基础就能上手。后面如果你们团队里有人写了一个好用的内部工具,打包成 Harness 插件分发下去,效率提升非常明显。

5. 接入模型与多智能体编排:让 Harness 真正干活

5.1 连接 Ollama 本地模型

Harness 本身不内置大模型,它需要对接外部模型或 API。最常见的组合是 Harness 对接 Ollama 跑本地模型。

在服务器上安装 Ollama 的方式这里不展开,装好之后拉取一个模型:

ollama pull qwen2.5:7b

然后在 Harness 的config.yaml里配置 Ollama 作为模型后端:

model: provider: openai-compatible base_url: http://127.0.0.1:11434/v1 api_key: ollama model: qwen2.5:7b thinking_mode: false

这里解释一下为什么provideropenai-compatible:Ollama 提供了兼容 OpenAI 格式的 API,Harness 可以用同一套协议对接不同后端,换模型只需要改 base_url 和 model 名称,不用改代码。

配置好之后,重启 Harness,在界面里直接问一个问题,如果能正常回答,就说明模型连接成功了。

5.2 配置 DeepSeek API 的思考模式

如果你不想折腾本地模型,直接用 DeepSeek 官方 API 是最省事的方案,国内服务器访问延迟极低,效果也稳定。

在 DeepSeek 开放平台申请 API Key,然后在 Harness 配置里改一下模型提供方:

model: provider: deepseek api_key: sk-你的密钥 base_url: https://api.deepseek.com/v1 model: deepseek-chat thinking_model: deepseek-reasoner thinking_mode: true

这里有个细节值得注意:deepseek-chat是普通对话模型,响应快;deepseek-reasoner是深度思考模型,适合复杂推理、代码分析这些场景。Harness 的thinking_mode开启后,可以指定一个思考模型专门处理需要深度推理的子任务,然后让主模型负责最终回复。

我的使用经验是:日常聊天和简单任务用thinking_mode: false,速度更快;复杂任务比如多轮推理、长文档分析,开启思考模式,效果提升非常明显。

5.3 多智能体编排的配置技巧

Harness 最吸引我的就是多智能体编排能力。简单说,你可以定义多个不同角色的智能体,每个智能体有自己的模型、系统提示词和工具,然后通过流程把这些智能体串起来,完成一个复杂任务。

举个例子,我想写一篇行业调研文章,拆成两个智能体:

agents: researcher: model: deepseek-chat system_prompt: 你是资深行业研究员,擅长搜索和总结信息 tools: ["web_search", "web_fetch"] writer: model: deepseek-chat system_prompt: 你是文案策划,善于把零散信息组织成结构清晰的文章 tools: ["markdown_render", "note_save"] flows: research_write: steps: - agent: researcher - agent: writer

配置好之后,触发流程:

dsh flow run research_write --input "2025年AI编程工具趋势"

Harness 会先让 researcher 去搜索资料,把结论整理好,再交给 writer 生成最终文章。整个过程不需要我手动切换工具,还是很方便的。

这里分享一个取舍:插件不要装太杂,尤其是要让智能体自动选择工具时,工具太多会导致模型决策变慢,还可能选错工具。宁可少而精,先把核心流程跑通,再慢慢加能力。

6. 腾讯云环境下常见问题排查实录

6.1 Web UI 公网访问不了

这个问题的出现频率最高,按顺序排查就好。

第一步,看监听地址。执行ss -tlnp | grep 8000,如果看到127.0.0.1:8000,说明进程只监听了本机,Harness 启动时要加--host 0.0.0.0

第二步,看安全组和防火墙。腾讯云控制台的防火墙规则只是第一层,服务器内部的ufwiptables规则也不能漏,检查:

sudo ufw status

如果开了 ufw,执行sudo ufw allow 8000/tcp放行。

第三步,直接用 curl 在服务器本地测试:

curl http://127.0.0.1:8000

如果能返回内容,说明服务正常,问题在公网链路,重点检查安全组。如果 curl 卡住,说明 Harness 本身没起来,看启动日志。

6.2 下载安装包慢或超时

GitHub 下载偶尔慢,这是很多人会遇到的问题。我的处理办法是:先在本地电脑上下载安装包,再用 scp 上传到服务器,这样最稳。或者把 GitHub 仓库导入到国内的代码托管平台,再从那里 clone。

另外,下载依赖时,pip 和 npm 都尽量配置国内源,速度差距很大。我之前没配源的时候,装一个 requirements.txt 可能要二十分钟,配了清华源之后两分钟搞定。

6.3 插件安装失败的常见原因

插件安装失败,我遇到过的原因基本就三种:一是 registry 地址不对,服务器连不上插件源;二是插件依赖的系统和 Harness 版本不兼容;三是插件依赖的第三方包缺了。

第一种,执行dsh market registry list检查源状态,换官方源或者自建本地源。

第二种,去插件的 manifest.json 看要求字段,确认 Harness 版本是否满足要求。如果不满足,要么升级 Harness,要么换一个版本兼容的插件。

第三种,报错日志里会写明缺哪个依赖,比如ModuleNotFoundError: requests,就在 Harness 的 venv 里手动装一下再重启。

6.4 进程守护与开机自启

nohup dsh serve启动的服务,SSH 一断开进程可能就没了,长期跑服务必须用 systemd 守护。

/etc/systemd/system/dsh.service里写:

[Unit] Description=DeepSeek Harness After=network.target [Service] User=ubuntu WorkingDirectory=/opt/deepseek-harness ExecStart=/opt/deepseek-harness/.venv/bin/dsh serve --host 0.0.0.0 --port 8000 Restart=always RestartSec=5 [Install] WantedBy=multi-user.target

然后执行:

sudo systemctl daemon-reload sudo systemctl enable --now dsh

以后服务崩了会自动拉起,重启服务器也会自动启动,查看日志用journalctl -u dsh -f

这里还有一个细节:ExecStart里要写 venv 里的绝对路径,不要直接写dsh,否则 systemd 找不到命令。这个坑我踩过,当时折腾了好久才反应过来。

6.5 腾讯云服务器需要什么浏览器

看到有不少人在搜索“腾讯云服务器用什么浏览器”,这里专门说明一下。如果你用的是 Linux 云服务器,默认没有图形桌面,也不需要装浏览器。Harness 的 Web UI 是通过你本地的浏览器访问的,服务器只是个“后台服务”,不负责渲染界面。

只有当你买的服务器是带图形界面的 Windows Server,或者你自己装了 Ubuntu 桌面环境,才需要在服务器内打开浏览器访问。但说实话,没有必要,白白浪费服务器资源。记住一个原则:服务器上只跑服务,访问服务用本地浏览器。

最后,再分享两个小经验。第一,配置好 Harness 之后,随手把~/.dsh目录打包备份到对象存储,插件配置和智能体编排都不会丢,换机器迁移的时候特别方便。第二,插件真不用贪多,先把搜索、记忆、定时任务这几个高频插件装好,跑通一两个完整流程,再按需扩展。我在云上跑了大半年,最值钱的感觉就是“让 Harness 7乘24小时在线跑任务”,那种第二天早上起来,看到所有智能体已经把昨晚交代的活儿干完的感觉,是真的爽。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询