Geosever部署及使用
环境基础:
拥有Java环境
1、下载和安装
官网地址:geoserver官网
下载地址(2.19.3版本):http://geoserver.org/release/2.19.3/
解压并上传至centos服务器
查看空间大小服务器磁盘空间大小:
df -h
文件系统 容量 已用 可用 已用% 挂载点
/dev/mapper/centos-root 11T 511G 9.9T 5% /
devtmpfs 32G 0 32G 0% /dev
tmpfs 32G 18M 32G 1% /dev/shm
tmpfs 32G 9.7M 32G 1% /run
tmpfs 32G 0 32G 0% /sys/fs/cgroup
/dev/sda2 1014M 171M 844M 17% /boot
/dev/sda1 200M 9.8M 190M 5% /boot/efi
/dev/mapper/centos-home 500G 362G 139G 73% /home
tmpfs 6.3G 36K 6.3G 1% /run/user/0
将geoserver包上传到自己的指定位置,并解压到指定问价夹
unzip geoserver-2.22.3-bin.zip -d geoserver
添加环境变量以保存geoserver的位置
echo "export GEOSERVER_HOME=/home/environment/geoserver" >> /etc/profile
source /etc/profile
使自己成为geoserver文件夹的所有者
chown -R root:root /usr/share/geoserver-2.19.3-bin
启动测试
cd /geoserver-2.19.3-bin/bin
#打开权限
chmod u+x *.sh
# 更改程序的启动端口(可选)
vim start.ini
# jetty.http.port=8080(你的端口号)
#启动
./startup.sh
出现以下输出,说明启动成功
2021-11-13 18:39:41.829:INFO:oejs.Server:main: Started @9496ms
开启指定端口号
#开启端口
firewall-cmd --zone=public --add-port=8080/tcp --permanent
#重启防火墙:
firewall-cmd --reload
#查询有哪些端口是开启的:
firewall-cmd --list-port
访问:http://172.21.1.8:8080/
默认的用户名和密码
用户名:admin
密码:geoserver
设置跨域
拷包
去geoserve的lib目录下 geoserver\lib找jetty-servlets-XX.jar , jetty-util-xx.jar(xx表示不同的版本)两个jar包;把两个jar包拷贝到geoserver\webapps\geoserver\WEB-INF\lib\目录下;
修改xml
去geoserver\webapps\geoserver\WEB-INF目录下找web.xml,进行如下修改:
把下面内容的注释去掉,大概在170行左右,取消后如下
取消注释,如下
重启Geoserver
./shutdown.sh #关闭
nohup ./startup.sh & #启动
2、 创建工作空间
3、 服务发布
发布遥感影像
TIF格式
1、将遥感TIF数据拷贝到geoserver数据路径下(强制):/geoserver-2.19.3-bin/data_dir/gwc
2、在Geoserver中新建数据存储
3、发布服务
4、设置去黑边
5、预切片
切片效果
6、预览效果
ImageMosaic格式
为什么要用这种格式?
1、当geoserver发布的单个遥感影像大于2-3GB时,其切片功能不完整,导致切出来的图像都是空白的;
2、用户提供的数据就是按照分幅或者分县区存储的。
拷贝数据
数据拷贝至Geoserver服务器数据存储地址:/geoserver-2.19.3-bin/data_dir/gwc
新建数据存储
保存发布。
发布服务和切片
发布服务与切片流程和方法与TIF发布一致
4、发布矢量切片
添加矢量切片服务拓展
1、登录网站GeoServer 进行安装包的下载
解压下载后的jar包如下
将以上jar包拷贝至geoserver的lib路径下:/geoserver-2.19.3-bin/webapps/geoserver/WEB-INF/lib
重启Geoserver
./shutdown.sh
nohup ./startup.sh &
本地shapefile发布
拷贝数据
将shapefile数据拷贝至geoserver默认地址路径:/geoserver-2.19.3-bin/data_dir/gwc
添加数据存储
发布
出现以下界面,则配置矢量切片成功
切片
切片的过程与遥感栅格切片一致
预览结果
PostgreSQL发布(PostGIS)
添加pg数据连接
填写pg数据库参数
发布
选择对应的几何
选择矢量切片服务
切片
与shapefile切片一致
5、服务加载
矢量切片
加载tms服务
geoserver切片完成后,获取到的切片地址为:
http://localhost:8080/geoserver/gwc/service/tms/1.0.0/test%3Atest_tif@EPSG%3A4326@pdf
mapbox加载,需对上述链接进行修改,修改后样式如下图所示:
http://localhost:8080/geoserver/gwc/service/tms/1.0.0/test%3Atest_tif@EPSG%3A900913@pdf/{z}/{x}/{y}.pdf
加载wfs服务
1、在浏览器中请求,添加过滤,返回json数据
http://localhost:8080/geoserver/wfs?service=WFS
&request=GetFeature
&version=1.1.0
&typename=lgd:lgd_bx_line_data (替换为自己的图层名称)
&outputFormat=json
&cql_filter=data_source='电力线'
2、在浏览器中请求,添加空间过滤,返回json数据
# 根据绘制的盒子,筛选出其中的数据
# WGS84坐标系
http://localhost:8080/geoserver/wfs?service=WFS
&request=GetFeature
&version=1.1.0
&typename=lgd:lgd_nx_line_data (替换为自己的图层名称)
&outputFormat=json
&BBOX=121.654,42.016,121.662,42.024,EPSG:4326
# CGCS2000坐标系
http://localhost:8080/geoserver/wfs?service=WFS
&request=GetFeature
&version=1.1.0
&typename=lgd:lgd_nx_line_data (替换为自己的图层名称)
&outputFormat=json
&BBOX=41388814.07715,4654729.83221,41389051.48247,4654952.92163,EPSG:4529
栅格切片
加载wmts服务
geoserver切片完成后,获取到的切片地址为:http://localhost:8080/geoserver/gwc/service/wmts/rest/test:test_tif/{style}/{TileMatrixSet}/{TileMatrix}/{TileRow}/{TileCol}?format=image/png
mapbox加载,需对上述链接进行修改,修改后样式如下图所示:
http://localhost:8080/geoserver/gwc/service/wmts?layer=lgd:lgd_image&style&TileMatrixSet=EPSG:900913&Service=WMTS&Request=GetTile&Version=1.0.0&Format=image/png&TileMatrix=EPSG:900913:{z}&TileCol={x}&TileRow={y}