Skip to main content

升级与备份

升级​

  1. 先备份,见下一节;
  2. 解压新版本的交付包,把旧目录里的 .env 和 license/ 拷进新目录;
  3. 把新目录 .env 里的 KNOWWORK_VERSION 改成新版本号;
  4. 在新目录里执行 ./install-pro.sh:拉新镜像、重启服务,数据库在启动时自动升级。

之后就在新目录里操作,旧目录可以删掉。已有的知识库、文档、分块和向量在升级时都保留,不需要重新解析。

升级前先看更新说明

每个版本交付时都附带更新说明,写明这一版的升级须知、不兼容的改动和会多调模型的新功能。升级前请先读一遍,也可以看更新记录。

备份​

在部署目录里执行 docker compose stop 停机后,备份下面这些 Docker 卷(卷名前缀默认 knowwork),以及部署目录里的 .env 和 license/:

卷内容
knowwork_pg-data数据库:账号、空间、权限、对话、知识库的文档信息与分块(含多跳检索的关系数据)
knowwork_milvus-data、knowwork_etcd-data知识库的向量
knowwork_rustfs-data上传的文档原件、对话附件、生成的文件
knowwork_secrets、knowwork_host-secrets、knowwork_db-secrets部署主密钥等
knowwork_dsh-data对话的运行数据
密钥卷一定要备份

三个 secrets 卷里是部署主密钥。丢了它,库里加密保存的模型密钥、数据源凭据就再也解不开了,只能逐个重新填写。

一个简单的备份写法(每个卷打成一个压缩包):

for v in pg-data milvus-data etcd-data rustfs-data secrets host-secrets db-secrets dsh-data; do
docker run --rm -v knowwork_$v:/data -v "$PWD/backup":/backup alpine \
tar czf /backup/knowwork_$v.tar.gz -C /data .
done
cp -r .env license backup/

恢复时在新机器上建同名卷、解压回去,再执行 ./install-pro.sh。

知识库也可以单独导出成包,在别的 KnowWork 里导入,见共享与导出导入。

更换授权文件​

授权到期或扩容时会给你一份新的 .license:

  1. 删掉 license/ 里的旧文件,放入新文件(目录里只能有一份);
  2. 在部署目录里执行 docker compose restart api worker;
  3. 用系统管理员登录,「管理后台」→「系统设置」里确认授权有效、到期时间已更新。

授权过期后,内置知识库等商业版功能会停用,已有的知识库、文档和向量都保留在库里;按上面的步骤换上新授权、重启后恢复。