1. 概述
1.1 版本说明
| 工具版本 | 功能变动 |
|---|---|
| FineKey 1.0 | - |
1.2 应用场景
容器化部署工具 FineKey 内置了最新版本的 docker 容器,包含 FR/BI 业务工程的镜像、各类组件镜像、Tomcat 镜像的镜像仓库。
但随着时间推移,为满足客户需求,产品会不断进行版本迭代,容器化部署的应用和组件也需要进行迭代。
本文将简单介绍如何通过替换镜像升级容器化部署的应用和组件。
2. 操作步骤
2.1 获取镜像包
付费用户联系技术支持,索要指定版本的镜像文件。将文件上传到finekey/resources/images目录下。
技术支持联系方式:在线支持:前往「服务」,选择「在线支持」;电话:400-811-8890。
本文示例镜像为:bi:6.0-20221230
2.2 确认镜像仓库地址
检查 FineKey 工具解压目录下 conf 文件夹里的 finekey.yaml文件,文件中 repo 部分即为对应的镜像仓库地址。
镜像仓库默认与工程在同一服务器下,默认端口为5000。
本文示例为:192.168.1.81:5000

2.3 推送镜像
1)重命名镜像
将镜像重命名,重命名为需要push到的镜像仓库地址。
操作语句:docker tag 原名称 <仓库ip地址>:<仓库端口>/原名称
示例语句:docker tag bi:6.0-20221230 192.168.1.81:5000/bi:6.0-20221230
2)推送镜像
操作语句:docker push [OPTIONS] NAME[:TAG|@DIGEST]
示例语句:docker push 192.168.1.81:5000/bi:6.0-20221230
3)检查镜像是否推送成功
操作语句:curl -XGET -u <仓库用户名>:<用户名密码> http://<仓库ip地址>:<仓库端口>/v2/<镜像名称>/targs/list
示例语句:curl -XGET http://192.168.1.81:5000/v2/bi/tags/list

2.4 运行新镜像
1)获取运行命令
打开/home/test/finekey下的deployment_list.yaml文件
根据需要修改的组件名称,找到bi容器的初始docker run语句,修改指令最后一行的镜像版本,并复制整个docker run语句。如下图所示:
注:deployment_list.yaml中的docker run指令,是第一次运行finekey部署应用时生成的执行指令。
如果后续重新跑过docker run命令,比如改过工程内存,修改过外挂目录等,此文件不会自动修改。
因此建议每次执行docker run指令,都手动更新下deployment_list.yaml文件,方便下一次直接修改,避免错改漏改的情况。

2)删除原工程容器
查应用容器ID:docker ps -a
例如本示例,查出的应用ID为f928763e0ec8
停止应用容器:docker stop 应用ID
示例语句:docker stop f928763e0ec8
删除应用容器:docker rm 应用ID
示例语句:docker rm f928763e0ec8

3)执行docker run指令
执行上文获取的、更新后的docker run指令。执行成功后会返回一串ID。

4)检查是否升级成功
语句:docker ps -a
查看到对应的IMAGE列也变成新的镜像,即为升级成功。

