用Docker搭建GIS本地化服务
在Linux系统上安装docker
1、 脚本安装(安装的是最新版,也可能是不稳定版)
wget -qO- https://get.docker.com/ | sh
sudo usermod -aG docker yourlinuxusername
2、 手动安装(推荐)
请安装官网教程操作(要看对应的Linux发行版安装教程)
https://docs.docker.com/engine/install/
3、 安装完成后查看docker进程状态信息
输入指令docker info
编写docker-compose.yml脚本构建多容器GIS应用
1、 先在Linux系统下建个GIS目录,如在当前用户home下建立如下目录:
cd ~
mkdir -p /Develop/dockerspace/gis
2、 编写compose脚本
官网教程:https://docs.docker.com/compose/compose-file/compose-file-v3/
vim docker-compose.yml
内容如下:
3、 启动docker容器
执行指令:docker-compose up
若要以守护进程运行加上-d参数,docker-compose up -d
执行docker ps会看到正在运行的容器:
4、 关闭docker容器
docker-compose down
配置GIS服务
1、 浏览器访问http://localhost:5080/登录pgAdmin,用户名密码即docker-compose中配置的xxx@xxxx.com/123
2、 pgAdmin下面没有server,需要手动添加,点添加服务器,配置postgis地址参数,如下图:
先docker ps查看postgis的name
然后docker inspect gis_postgis_1查看路由
保存配置,server添加成功。
3、 安装postgis两个扩展(postgis、postgis_topology),如下图所示操作:
安装成功如下图:
安装QGIS并添加空间数据测试效果
1、官网https://www.qgis.org/en/site/forusers/download.html
请在客户端系统下载对应的QGIS安装包安装
2、配置postgis数据库连接
3、导入测试用shp空间数据
4、导入成功,默认在public下面,如图:
5、浏览器访问http://localhost:8080/geoserver,打开geoserver管理页面登录,用户名密码为admin/geoserver,配置postgis数据源。
点击创建工作区-添加工作区,如xu
新建数据存储
保存ok