SuperMap iPorta扩展jar包如何在云套件上使用

5 篇文章 0 订阅
2 篇文章 0 订阅

      随着云原生的广泛使用,云套件iPortal使用也越来越多,那么经典版iPortal中扩展的接口,又要怎么在云套件中去使用呢?成了一个问题。下面本文就带着大家去实现iPortal扩展接口迁移到云套件中去。

      云套件的iPortal中使用扩展接口,本质上和普通版一样,我们就先说说经典版如何发布吧。

1 经典版iPortal后端接口定制开发成果的发布

      经典版的iPortal发布定制开发接口,需要将扩展jar拷贝至 %SuperMap iPortal_HOME%\webapps\iportal\WEB-INF\lib,将xml 配置文件拷贝到 %SuperMap iPortal_HOME%\webapps\iportal\WEB-INF\config。具体可参考iPortal帮助文档中的“发布定制开发成果”。
在这里插入图片描述

2 云套件iPortal后端接口定制开发成果的发布

      云套件iPortal后端接口定制开发成果的发布,就是xml配置文件和接口jar包拷贝到iPortal容器的%SuperMap iPortal_HOME%\webapps\iportal\WEB-INF目录下config和lib中,要做到容器重建之后也带有该数据,可以以下几种方式去实现:

  1. Dockerfile重新打包成镜像;
  2. 将容器通过commit成一个新的镜像;
  3. 将lib和conf目录持久化出去;

      方式2和方式3可行但是不做推荐不建议,弊端太明显了。方式3每次换更换镜像都需要将心镜像的lib目录下的jar包给拷贝到持久化目录中去,而方式2是将容器commit成镜像,iPortal本身就会存数据,便会导致中重新打包镜像越来越大。本文就以Dockerfile重新打包成新镜像来实现云套件iPortal后端接口定制开发成果的发布

2.1 Dockerfile打包镜像

      在k8s集群中(含有Docker工具)的任意机器中新建一个空的文件,作为Dockerfile的build目录,本文是放到/home/iportal目录下。

mkdir -p /home/iportal
# 存放iPortal扩展jar包
mkdir -p /home/iportal/myextend

      a. 将扩展jar包上传到/home/iportal/myextend
      b. 在/home/iportal目录下编写Dockerfile文件,Dockerfile编写可以参考: Docker官网文档,本文的Dockerfile内容如下:

FROM registry.cn-beijing.aliyuncs.com/supermap/iportal-icloud-native:11.1.1-amd64
COPY ./myextend/custom-api.jar /etc/icloud/SuperMapiPortal/webapps/iportal/WEB-INF/lib/

      c. 通过docker build 指令打包镜像

docker build . -t registry.cn-beijing.aliyuncs.com/supermap/iportal-icloud-native:11.1.1-231031-amd64

      注意:本文使用的是在线阿里仓库且是单节点集群,就没有像镜像仓库进行推送,对于集群而言,是需要将该镜像推向私有仓库。

      d. 将xml配置文件拷贝到iPortal的iportal-config-volume持久化目录中的/WEN-INF/conf目录下
      如何查看iPortal的nfs持久化具体目录可以参考之前博客SuperMap云套件Web打印服务添加布局模板中的“查看Web打印服务resources资源持久化目录“段落获取。

2.2 结果验证

      a. 在iManager的云套件站点管理中修改iPortal镜像,截图如下:
在这里插入图片描述
      b. 待iPortal容器启动完毕后,访问扩展接口,本文扩展代码设置@Path=“/hello/myextend”,测试截图如下:
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值