作者:John
GIS云套件和经典版iServer一样可以发布DM数据,同样也和iServer一样需要引入DM依赖包,需要对云套件的ispeco-dashboard-api 和 gisapp-* 镜像进行补充DM依赖包,其补充DM主要有以下几个步骤,本文将通过ispeco-dashboard-api为例出生成包含DM依赖包的新镜像,gisapp-*与之类似,就不在做额外的说明。
1、获取ispeco-dashboard-api的UGO_HOME路径
UGO_HOME目录一般是在容器内的/opt/UGO/Bin,如果没有也可以执行 echo $UGO_HOME 去指令去获取组件的具体所指目录。
2、将达梦数据库安装的bin目录下将以下.so文件复制到ispeco-dashboard-api容器的UGO_HOME目录下
参考云套件帮助文档-发布DM工作空间,其需要的DM依赖包如下,并将这些DM依赖包的拷贝到ispeco-dashboard-api容器UGO_HOME目录下:
进入ispeco-dashboard-api容器的UGO_HOME目录下,执行 ldd -r libSuEngineDMCI.so | grep not 检测DM数据库依赖是否完整
ldd -r libSuEngineDMCI.so
3、基于添加DM依赖后的ispeco-dashboard-api容器创建新的common-dashboard-api镜像
docker commit <容器名> <新镜像名称>
4、使用新镜像去替换镜像仓库中之前的镜像
为了保证容器新建或者重建之后使用的还是新的镜像,就需要用新的镜像去替换原有的,且镜像拉取策略是IfNotPresent或者Never,还需要节点去拉取新的镜像。
docker push <新镜像名称>
5、对gisapp-*添加DM依赖包
重复上面的步骤1~4对gisapp-*添加DM依赖包,如果是创建新的服务节点,就能发布DM工作空间了;否则还需删除重建一下待使用的这个服务节点容器,待到容器重建完成,再发布即可。
6、结果展示
注:如果添加了上面的依赖还是提示获取DM数据源失败,那可能还缺少基础包,如:libcrypto.so。