QRVeo

私有化视频点播

已部署环境请用新版本安装包中的 upgrade.sh,不要重新执行 install.sh,也不要用新版全量 schema dump 覆盖客户库。升级分两种现网形态,请先确认再操作。

升级前(通用)

  • 确认 License 维护期有效(maintenanceExpiresAt),方可获取新版本安装包;过期需续费后由厂商重签
  • 下载与现网一致的架构包(amd64 或 arm64 / aarch64)
  • 保留 License 文件、域名与对外端口约定

先确认现网是哪种部署

Linux 生产 / 腾讯云等服务器默认是 K8s(或 K3s);Mac 演示 / 显式指定 compose 才是 Docker Compose。安装包里只有 .env.template、没有 .env,通常说明当初走的是 K8s,不必也不该去「造」一个 .env。

K8s / K3s

kubectl get ns vod-private

Docker Compose

docker compose ls # 或 ls 旧目录 docker-compose/.env

路径 A:K8s / K3s(Linux 生产常见)

密码与凭证在集群 Secret 中(如 mysql-credentials、minio-credentials),不依赖 docker-compose/.env。

  1. 解压新版本安装包,进入其中的 private-deploy 目录
  2. 确认本机 kubectl 能访问现网集群(K3s 通常需正确的 KUBECONFIG)
  3. 直接执行升级脚本(默认会先备份) ./scripts/upgrade.sh
  4. 验收:管理后台上传 → 编码 → 播放

不要从 .env.template 复制出新的 .env 再升级——会生成新随机密码,与库中已有数据对不上。若安装时用过 LoadBalancer(可直接访问 http://IP/),升级请带 VOD_EXPOSE_MODE=loadbalancer,或升级后执行:VOD_EXPOSE_MODE=loadbalancer ./scripts/apply-expose-services.sh

路径 B:Docker Compose(Mac 演示 / 显式 compose)

Compose 路径才会生成 docker-compose/.env(含数据库与 MinIO 密码)。新包目录里默认只有 .env.template,必须从旧安装目录拷贝真实的 .env。

  1. 解压新版本安装包,进入其中的 private-deploy 目录
  2. 将旧版 docker-compose/.env 复制到新包同路径

    缺 .env 时脚本会失败(避免误用默认 IMAGE_TAG=0.1.0 去 pull)。拷贝示例:

    cp /path/to/old/private-deploy/docker-compose/.env ./docker-compose/.env
  3. 确认 license.json 与 license.sig 在 private-deploy 目录(或按现网挂载方式保留)
  4. 执行升级脚本(默认会先备份) ./scripts/upgrade.sh
  5. 验收:管理后台上传 → 编码 → 播放

脚本会做什么

  • 升级前备份(可用 --skip-backup 跳过,不推荐)
  • 加载安装包内业务镜像(K8s 会导入到可调度节点)
  • 应用新版本 manifests,或 docker compose up
  • 执行增量 SQL(upgrade-db.sh),不会用 dump 覆盖库
  • 滚动重启 / 重建业务组件

升级后验收

建议跑冒烟验收(可选):

./scripts/e2e-acceptance.sh --smoke-only

仅更新 License

买断永久使用;续费更新的是维护期。只需替换验签文件时:

./scripts/update-license.sh --license ./license.json --sig ./license.sig

注意

  • 禁止用新版本全量 schema dump 覆盖客户库
  • 维护期过期不阻断已部署系统继续运行;获取新包与升级支持需在维护期内
  • 架构必须与现网一致;选错包会导致镜像无法启动
  • 备份目录请纳入客户备份策略;未安装 mc 时可能跳过 MinIO 对象备份(仅警告)

返回安装与下载