---
url: /v6.2/docker-upgrade.md
---
# 容器部署的版本升级

当 HENGSHI 版本升级后，请按照如下步骤在容器上进行升级操作。

1. 获取并导入离线镜像。
   ```sh
   wget https://download.hengshi.com/releases/hengshi-sense-xxx.tar.gz
   docker load -i hengshi-sense-xxx.tar.gz

   # 如果容器运行时使用containerd 需要使用docker将格式转为tar再进行导入
   ctr -n k8s.io images import hengshi-sense-xxx.tar
   ```

2. 无自动备份，需升级前手工备份数据！ [容器环境备份](docker-backup-restore.md#备份-metadb)

3. 停止服务。
   ```shell
   # 进入当前部署目录停止服务
   # 例如部署在/data目录下，则完整路径通常为/data/docker-compose-x.x 
   # 请根据实际路径为准 不要直接复制粘贴运行。
   cd docker-compose-x.x
   docker-compose down
   ```

4. 根据升级版本获取 docker-compose 部署文件，配置文件可参考 [部署前准备工作](docker.md)。

5. 更新衡石镜像 tag。
   ```shell
   # 例如部署在/data目录下，则完整路径通常为/data/docker-compose-x.x 
   # 请根据实际路径为准 不要直接复制粘贴运行。
   cd docker-compose-x.x
   NEW_TAG=hengshi-sense-xxx #设置变量为新 tag
   sed -i -e "s/^HS_IMAGE_TAG=.*$/HS_IMAGE_TAG=${NEW_TAG}/" .env
   ```

6. 启动服务，升级完成。
   ```shell
   # 例如部署在/data目录下，则完整路径通常为/data/docker-compose-x.x 
   # 请根据实际路径为准 不要直接复制粘贴运行。
   cd docker-compose-x.x
   docker-compose up -d
   ```

7. 升级版本 **>=4.0** 注意事项
   1. 服务镜像 >= 4.0 版本开始，Metadb 默认版本为13.5，可根据需要判断是否进行升级操作
   2. [升级操作](metadb-upgrade.md)
   3. 维持现有版本
      1. 编辑 docker-compose.yaml 文件，将 metadb>image 配置下\*\*${HS_IMAGE_TAG:-need_hs_image_version}\*\*的参数修改为<4.0版本 镜像信息

8. 注意事项：
   1. 5.1.x 版本 flink 已被移除，无需运行。升级后可考虑停止并清理 flink 的容器。

# 回滚

1. 回滚程序
   更新 docker-compose 使用的镜像为旧版镜像

```shell
docker-compose down
sed -i -e "s/^HS_IMAGE_TAG=.*$/HS_IMAGE_TAG=${OLD_TAG}/" .env
```

2. 回滚数据
   使用 [容器恢复](docker-backup-restore.md#恢复-metadb) 恢复 metadb 的操作过程
