离线地图部署-Docker+GeoServer【真保姆级教程】

最近业务需要部署离线地图,在网上找了很多资料,要么是挂羊头卖狗肉,要么说的乱七八糟,甚至还有错误,这篇文章记录从无到有的每一步,你只管点进来,点进来就能解决你的问题。

1、Docker部署

Docker的部署我之前已经发过详细教程了,同样是保姆级,如果还没安装Docker的先去看我那篇文章,先安装好Docker。

2、创建数据挂载目录

在服务器中创建挂载目录

# 创建geoserver的挂载数据目录,存放tif格式数据
mkdir -p /root/geoserver/data_dir/tif

效果展示,我这里是用的Xftp可视化工具,在我另一篇文章也有下载链接。

3、拉取镜像 

直接拉取最近镜像即可

# 获取最新镜像
docker pull kartoza/geoserver

4、运行容器

# 运行容器(取消换行执行)
docker run
--name geoserver #容器名称
-d #后台运行容器,并返回容器ID
-p 8090:8080 #容器端口:服务端口
-e GEOSERVER_ADMIN_USER=admin #指定管理用户
-e GEOSERVER_ADMIN_PASSWORD=geoserver #指定管理用户密码
-e GEOSERVER_DATA_DIR=/opt/geoserver/data_dir #声明GeoServer的数据目录
-v /root/geoserver/data_dir:/opt/geoserver/data_dir #数据挂载地址
kartoza/geoserver

上面为每条命令语句的说明,下面是直接复制执行的命令

注意:这里面这个目录设置理论上来说不需要这么长,但是我也是查资料参考实现,如果您有实力对此处作出修改,请务必联系我。

docker run --name geoserver -d -p 8090:8080 -e GEOSERVER_ADMIN_USER=admin -e GEOSERVER_ADMIN_PASSWORD=geoserver -v /root/geoserver/data_dir:/opt/geoserver/data_dir kartoza/geoserver

5、测试使用

5.1、访问GeoServer

在浏览器中访问  服务器ip:8090/geoserver,访问成功效果如下

 5.2、登录

账户名:admin
账户密码:geoserver

如果上面没改密码,即是默认密码,如果改了,那就输你改的密码。

5.3、创建工作空间

 为工作空间命名

 5.4、上传数据

重点来了,此时我们需要将地图数据上传到服务器中刚刚创建的挂载目录,如图所示是已经上传了

 现在来讲一下地图数据获取,我这个数据也只是测试数据,是从一个付费软件中白嫖的6级地图,达不到业务需求,但是测试足够用了,我目前也没有好的办法可以获取18级以上的地图文件,如果有大佬路过,还望指点。

这里涉及两个难点,我也没解决

1、获取18级以上的tif格式地图文件

2、将文件从投影坐标系转为地理坐标系

TIPS:应该是可以直接下载tif格式的地理坐标系数据的,但是让各位见笑了,我也没解决,如果有大佬路过,还望指点。

重点:地图数据的格式必须为tif格式的地理坐标系,否则GeoServer会找不到或者报错!!!

重点:地图数据的格式必须为tif格式的地理坐标系,否则GeoServer会找不到或者报错!!!

重点:地图数据的格式必须为tif格式的地理坐标系,否则GeoServer会找不到或者报错!!!

5.5、添加数据存储

 点击添加后,如下图效果,我们选择GeoTIFF

 添加栅格数据源

 连接参数设置

 5.6、服务发布

 新建图层,应该只有一个可以选择,就选择这个

 点击发布,由于我已经发布过了,所以我这显示的是再次发布

 5.7、服务预览

点击图层预览

点击后会显示如下效果,右下角的经纬度会随着鼠标指针移动变化

 

至此,全部需求已经完成,虽然有两个未解决的问题,但是在下能力有限,如果有了解决办法我会重新更新,如果有大佬路过,望您不吝指点,再次感谢!

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值