Linux系统使用Docker部署Geoserver并做数据挂载进行地图服务的发布和游览
文章目录
- 1、前提环境
- 2、拉取geoserver镜像
- 3、创建数据挂载目录
- 4、 运行容器
- 5、 测试使用(发布shp数据为服务)
- 5.1、创建工作区
- 5.2、添加数据存储
- 5.3、发布图层
- 5.4、服务游览
1、前提环境
部署环境:Linux,Centos7 ,Docker环境
本文中使用的Linux环境主机配置是:
2核4GB centos7系统
2、拉取geoserver镜像
# 获取最新镜像
docker pull kartoza/geoserver
# 获取指定版本镜像(本次采用)
docker pull kartoza/geoserver:2.20.3
3、创建数据挂载目录
# 统一管理Docker容器的数据文件,geoserver
mkdir -p -m 777 /dockerfile/geoserver
# 创建geoserver的挂载数据目录
mkdir -p -m 777 /dockerfile/geoserver/data_dir
# 创建geoserver的挂载数据目录,存放shp数据
mkdir -p -m 777 /dockerfile/geoserver/data_dir/shp
4、 运行容器
# 运行容器(取消换行执行)
docker run --name geoserver -d -p 8080:8080 -e GEOSERVER_ADMIN_USER=admin -e GEOSERVER_ADMIN_PASSWORD=geoserver -v /dockerfile/geoserver/data_dir:/data_dir kartoza/geoserver:2.20.3
参数说明:
–name geoserver #容器名称
-d #后台运行容器,并返回容器ID
-p 8080:8080 #容器端口:服务端口
-e GEOSERVER_ADMIN_USER=admin #指定管理用户
-e GEOSERVER_ADMIN_PASSWORD=geoserver #指定管理用户密码
-v /dockerfile/geoserver/data_dir:/data_dir #数据挂载地址 kartoza/geoserver:2.20.3 #镜像名称
注意
在服务器,安全组开放8080端口。
5、 测试使用(发布shp数据为服务)
- 访问GeoServer的web地址并登录
http://服务器公网ip:8080/geoserver
登录账户名:admin
账户密码:geoserver
登录成功后的页面:
5.1、创建工作区
如下图所示,点击左侧菜单项【工作区】,然后点击【添加新的工作区】。
工作区:也可以称为工作空间,与命名空间类似,可以将其看做一个用于将相似的图层放在一起的容器。然后通过 工作区名称:图层名称 来引用图层。
注:两个不同的图层可以具有相同的名称,但它们需位于不同的工作区,例如:topp:states、sf:states。
如下图所示,输入【Name】和【命名空间 URI】(自定义即可),最后点击【保存】按钮即可。
注意事项: Name 输入项限制为10个字符,并且不能包含空格。URI 类似于 URL,不需要指向 Web 上的实际位置,它只是一个唯一标识符,建议使用与项目关联的 URL,这里模仿了官方文档的命名。另外,这里也推荐勾选下图中【默认工作区】选项。
最后,点击保存。
5.2、添加数据存储
如下图点击左侧菜单项【数据存储】,然后点击【添加新的数据存储】。
添加数据存储:即连接到包含栅格或矢量数据的数据源。注意:这里仅仅定义本次的连接参数,而不是为源中的每个数据集定义连接参数,因此在存储区中配置数据集之前,必须先注册该存储区——添加数据存储。
上传数据到linux的shp数据挂载目录
添加shp数据存储
如下图所示:工作区指向了设置的默认工作区,输入【数据源名称】(和数据名称一致即可),然后点击【Shapefile文件的位置】选项右侧的【浏览】,定位至数据的位置,字符集建议选择【GBK】,避免预览图层时标注出现中文乱码,最后点击【保存】按钮。
5.3、发布图层
点击上一步的【保存】按钮后,会跳转至下图所示的页面,点击【发布】按钮。
点击上图中的【发布】选项卡,划拉至如下图所示的【WMS Settings】选项,如下图所示,默认样式为【point】,这里我们先不做修改,直接点击页面底部的【保存】按钮。
5.4、服务游览
预览图层如下图所示,点击左侧菜单项【图层预览】,这里我们可以点击表格的【名称】排序,方便我们快速定位,然后点击我们刚刚发布的图层右侧的【Openlayers】按钮即可预览。
欲戴皇冠,必承其重;感谢支持…