Linux容器虚拟技术(LXC,Linux Container)是一种轻量级的虚拟化手段,它利用内核虚拟化技术提供轻量级的虚拟化,来隔离进程和资源。Docker扩展了LXC,提供了更高级别的API,并简化了应用的打包和部署,为终端用户创建彼此独立的私有环境,可有效节约开发者和系统管理员的环境部署时间。
参考博客 https://www.runoob.com/docker/centos-docker-install.html
或者Docker官网 https://docs.docker.com/engine/install/centos/
在Docker宿主机中执行以下命令下载最新的 iServer 镜像:
docker pull supermap/iserver
下载完成后,您可以通过以下命令查看已下载的image信息:
docker images
运行Docker即可启动iServer
基于下载的iServer 镜像,运行一个Docker容器iserver1。执行如下命令:
docker run --name iserver1 -d -p 8090:8090 -v `pwd`/my_opts:/opt/iserverOPTs supermap/iserver
注意:my_opts 代表要从宿主机中要映射到容器的数据所在的文件夹,可以根据您计算机中的实际路径自定义,/opt/iserverOPTs 为一个已存在于容器中的文件夹,用于存放所有 iServer 相关的配置文件。
在上述步骤中,已通过-v参数指定了从宿主机到Docker容器的映射路径(-v pwd
/my_opts:/opt/iserverOPTs),因此可以直接将数据放在宿主机的某一目录中(pwd
/my_opts)。登录iServer服务管理器,进入快速发布服务向导,远程浏览时就可以直接在容器的相应目录下找到映射的数据并发布。
以数据放到iserver_data文件夹为例,iserver发布服务时就可以选择该数据
可将上述示例中启动的 iServer 作为集群主节点。启动容器son1,作为集群子节点:
docker run --name son1 --link iserver1:master -v /home/data:/home supermap/iserver
出现以下字样说明启动成功
修改集群子节点的iserver-system.xml文件,配置加入集群
<reporter> <enabled>true</enabled> <address>http://master:8090/iserver/services/cluster</address> <isTileWorker>true</isTileWorker> <token/> </reporter>
两个容器都启动后,可以通过http://<宿主机IP>:8090 访问服务,并在“集群”页面看到子节点已经添加完成,子节点也可以作为切图子节点参与切图任务。