docker实现离线地图server

docker实现离线地图server

  • 一:背景
  • 二:技术栈
  • 三:安装准备
    • 3.1:安装配置docker
    • 3.2:准备瓦片文件
    • 3.3:下载所需的git.js 和 CntenLomap.js文件
  • 四:启动离线地图服务
    • 4.1下载镜像
    • 4.2运行容器
  • 五项目中集成map server
    • 5.1在html中引入相应的js和css文件
    • 5.2body标签中增加地图渲染的div
    • 5.3 修改git.js 中的ip修改为地图server 的ip
  • 结束
  • 学习交流联系本人qq:914423503

一:背景

各位大佬们大家好。公司有项目需要集成离线地图功能。我之前曾经将百度成功离线,只是版本比较低。如图
百度离线地图
但是总感觉百度离线地图不太好控制,因为很多api都是百度已经实现,功能也不好扩展,于是我一咬牙,准备自己写一套离线地图服务,结果就走上了一条不归路~ ~
​​

二:技术栈

经过的我的一系列努力,终于将技术栈确定:node js + openlayers + XXXXXX.mbtiles

  1. node js :简单的说 Node.js 就是运行在服务端的 JavaScript。(自己学习纯属想实践用一下);
  2. openlayers:一个专为Web GIS 客户端开发提供的JavaScript 类库包,用于实现标准格式发布的地图数据访问;
  3. XXXXXX.mbtiles :地图瓦片数据。.mbtiles格式是可以通过sqllite打开的文本数据库。可以通过水经注软件下载(收费,下载慢,收费);

三:安装准备

3.1:安装配置docker

docker 安装非常简单,安装流程是 1.配置docker安装源。2.安装docker 3.设置镜像加速

3.2:准备瓦片文件

我这里下载的是北京市的瓦片文件,文件名称是beijing_e_19.mbtiles。并移动到/App/map/beijing_e_19.mbtiles目录中。如图
瓦片文件路径

3.3:下载所需的git.js 和 CntenLomap.js文件

1.文件仓库:https://github.com/914423503/linemap.git 将该仓库克隆到本地
2.将git.js 移动到 /App/map/。如图git.js文件路径
3.修改git.js 中IP地址:(我的虚拟机中ip是:192.168.1.79)如图
修改git.js路径地址

四:启动离线地图服务

4.1下载镜像

用docker下载地图镜像:docker pull 914423503/linemap:latest
下载离线地图镜像

4.2运行容器

运行docker容器:
docker run -d -p 3000:3000 -v /App/map:/map -v /App/map/script/git.js:/app/public/javascripts/git.js 914423503/linemap:latest

========================================================================
至此地图服务已经启动完毕。浏览器输入http://ip:3000/gis 即可访问。如图:
![访问离线地图服务

五项目中集成map server

做这个地图server的根本目的是在项目中使用,接下来会将地图server和项目的集成,加以说明。已经封装的非常简单
完整代码:https://github.com/914423503/linemap/tree/master/demo

5.1在html中引入相应的js和css文件

  <link rel="stylesheet" href="css/ol.css"/>
  <script src="js/jquery.min.js" type="text/javascript"></script>
  <script src="js/ol.js" type="text/javascript"></script>
  <script src="js/CntenLomap.js" type="text/javascript"></script>
  <script src="js/git.js" type="text/javascript"></script>

5.2body标签中增加地图渲染的div

	<div class="mapContainer" style="height: 100%;">
      <div id="map" class="map" style="height: 100%;">
        <div id="popup">
          <div id="popup-content">
          </div>
        </div>
      </div>
	</div>

5.3 修改git.js 中的ip修改为地图server 的ip

在这里插入图片描述
noce 连我的爱上我自己了

结束

至此,一个完整的离线地图服务搭建完毕。并且可以集成到自己的项目中。谢谢大家的支持与阅读。

学习交流联系本人qq:914423503

Github:https://github.com/914423503
docker:914423503/otomcat,914423503/geoservertomcat
csdn:https://blog.csdn.net/u010403700
[1]: https://github.com/914423503
[2]: https://blog.csdn.net/u010403700
[3]: 914423503/otomcat,914423503/geoservertomcat
在这里插入图片描述

  • 7
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
Docker Desktop离线安装包是一种用于在没有互联网连接或网络环境较差的情况下安装Docker Desktop的方法。通常,通过互联网下载和安装Docker Desktop是最常见的方法,但是在某些情况下,这种方法并不可行。因此,Docker提供了离线安装包来解决这个问题。 离线安装包是一个自包含的软件包,其中包含了安装Docker Desktop所需要的所有依赖文件和二进制文件。这样,我们可以将该软件包下载到没有互联网连接的机器上,并通过一些手动步骤来完成安装过程。 首先,我们需要从Docker官方网站上下载适用于我们操作系统的离线安装包。下载完成后,我们需要将该软件包传输到目标机器上,可以通过U盘、局域网或其他离线传输方法实现。 接下来,在目标机器上,我们需要运行离线安装包,并按照其中的安装指南执行相应的步骤。这通常包括解压缩安装包,运行安装脚本或执行其他必要的命令。 在安装过程中,可能会需要提供一些必要的配置信息,例如用户名、密码、镜像存储路径等。这些信息可以根据实际需求进行配置。 完成安装后,我们就可以在目标机器上正常使用Docker Desktop了。我们可以通过命令行界面或图形用户界面来管理和运行Docker容器,并且可以在离线环境中构建、部署和运行各种应用程序。 总结而言,Docker Desktop离线安装包是一种方便的安装方式,可以帮助我们在没有互联网连接的环境中安装和使用Docker Desktop。通过下载相应的离线安装包,并按照其中的指南执行安装步骤,我们可以在离线环境中轻松地部署和管理Docker容器。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值