使用docker安装SuperMap iServer服务
超图在线GIS平台
基于 SuperMap GIS 产品 打造,提供GIS数据智能服务,赋能合作伙伴共创在线GIS应用生态。
SuperMap GIS 2025 全新发布两款产品:SuperMap TransformX——跨平台空间数据转换软件,满足多源异构数据的多样化转化和处理需求;SuperMap AgentX Server——超图 GIS 智能体服务平台,提供扩展开发能力,满足行业智能体或行业 AI 助理快速构建需求,集成地理空间数据处理及分析能力,协同调用内外部工具,提供自然语言交互式 GIS 解决方案。SuperMap GIS 2025 进一步深化 GIS 基础软件六大技术体系(BRT-IDC)相关能力,即大数据 GIS、新一代遥感软件、新一代三维 GIS、地理空间 AI、分布式 GIS 和跨平台 GIS 技术体系,赋能各行业信息化。
1、获取 iServer 镜像
输入以下命令即可获取 Linux X86-64 架构 11.2.0 版本的 iServer 镜像:
docker pull registry.cn-beijing.aliyuncs.com/supermap/iserver:11.2.0-amd64
输入以下命令即可获取 Linux ARM64 架构 11.2.0 版本的 iServer 镜像:
docker pull registry.cn-beijing.aliyuncs.com/supermap/iserver:11.2.0-arm64
查看镜像信息
下载完成后,您可以通过以下命令查看已下载的 image 信息:
docker images
获取离线 SuperMap iServer 镜像
针对无法连接公网的局域网场景,您可以联系 SuperMap 支持中心获取离线的 iServer 镜像。
将获取到的 iServer 镜像(*.tar)拷贝到离线环境中,并导入到 Docker 中
docker load -i *.tar
通过以下命令查看是否导入成功:
docker images
启动并使用 iServer
运行 Docker 容器
基于获取的 iServer 镜像,运行一个Docker容器 iserver1。
如您是从阿里云下载的镜像,执行如下命令,以获取 Linux X86-64 架构 12.0.0.0 版本的镜像为例:
docker run --security-opt seccomp=unconfined --name iserver1 -d -p 8090:8090 -v /data/opts:/opt/iserverOPTs registry.cn-beijing.aliyuncs.com/supermap/iserver:11.2.0-amd64
其中:
–name 表示为容器指定一个名称。–name iserver1表示指定容器名称为 iserver1;
-d 表示后台运行容器,并返回容器ID;
-p 指定端口映射,格式为:主机(宿主)端口:容器端口。-p 8090:8090 表示指定映射的主机端口(对外暴露端口)为8090,容器端口也为8090;
iServer_JAVA_OPTS 表示 iServer 的 Java 内存配置;
-v 表示映射数据路径,格式为:主机(宿主)路径:容器路径。搭建集群时,使用此参数后可在主节点上发布服务。如果主节点不需要发布服务,则无需使用 -v 参数;
registry.cn-beijing.aliyuncs.com/supermap/iserver 表示对应的镜像名称。如您是获取的离线镜像,则此处应输入对应的镜像名称。您可以通过以下指令,查看查看已有本地仓库已有的镜像信息:
docker images
等待几秒钟,iServer 启动完成。在浏览器中输入 http://:8090,即可访问 iServer。
设置环境变量(可选)
若要使用 iServer 的分布式分析服务,则在运行时需要设置 distributeanalysthost 这个环境变量,其中,distributeanalysthost 对应的是容器内部的ip。
如您是从阿里云下载的 Linux X86-64 架构 12.0.0.0 版本的镜像,执行如下命令:
docker run --security-opt seccomp=unconfined --name iserver1 -d -p 8090:8090 --env distributeanalysthost=\"172.17.0.2\" -v /data/opts:/opt/iserverOPTs registry.cn-beijing.aliyuncs.com/supermap/iserver:11.2.0-amd64
注意:my_opts 代表要从宿主机中要映射到容器的数据所在的文件夹,可以根据您计算机中的实际路径自定义,/opt/iserverOPTs 为一个已存在于容器中的文件夹,用于存放所有 iServer 相关的配置文件。
在 iServer 上发布 GIS 服务
在上述步骤中,已通过-v参数指定了从宿主机到 Docker 容器的映射路径(-v pwd
/my_opts:/opt),因此可以直接将数据放在宿主机的某一目录中(pwd
/my_opts)。登录 iServer 服务管理器,进入快速发布服务向导,远程浏览时就可以直接在容器的相应目录下找到映射的数据并发布。
路径映射的方式可以用来发布文件型 GIS 数据,如文件型工作空间、MBTiles 瓦片包等。对于存储在数据库中的 GIS 数据,如数据库型工作空间、MongoDB 瓦片等,则无需此映射。建议将数据库单独部署,例如部署在宿主机上或其他机器上,并使所有 iServer 都可以访问该数据库。
基于Docker搭建iServer集群
可将上述示例中启动的 iServer 作为集群主节点。启动容器son1,作为集群子节点:
如您是从阿里云下载的 Linux X86-64 架构 12.0.0.0 版本的镜像,执行如下命令:
docker run --security-opt seccomp=unconfined --name son1 --link iserver1:master -v /home/data:/home registry.cn-beijing.aliyuncs.com/supermap/iserver:11.2.0-amd64
子节点无需对外暴露端口号,可以在宿主机内使用容器son1的内部 IP 访问服务,并发布服务以及加入集群,集群主节点 IP对应别名 master。您也可以通过修改子节点的 iserver-system.xml 的方式手动加入集群,修改内容如下:
<clustering> <reporters> <reporter> <enabled>true</enabled> <address>http://master:8090/iserver/services/cluster</address> <isTileWorker>true</isTileWorker> </reporter> </reporters> </clustering>
–link 参数的格式为 --link name:alias,此处 --link iserver1:master表示将该容器连接到iserver1容器上,为iserver1设置别名为master。别名可以随意指定
-v 映射数据路径,方便在子节点上发布服务
两个容器都启动后,可以通过http://:8090 访问服务,并在“集群”页面看到子节点已经添加完成,子节点也可以作为切图子节点参与切图任务。
在主节点上开启集群服务,即可使用集群功能。
许可配置
Docker 部署 iServer 许可配置方法如下:
普通许可配置过程:
使用文件许可,需将容器适配许可文件放置于容器 LICENSE_DIR(默认为 /opt/SuperMap/License)目录下,容器 hostname 与许可文件中记录的保持一致;
使用网络锁硬件许可,需要在启动命令加上 :
-e LICENSE_SERVER=许可服务器 IP
官方地址:https://help.supermap.com/iServer/Install_Uninstall/docker_iServer.htm源文件下载:http://support.supermap.com.cn/DownloadCenter/ProductPlatform.aspx官方博客地址:https://blog.csdn.net/supermapsupport