Linux系统使用Docker部署Geoserver

发布时间 2023-12-13 08:13:02作者: liaozk

1 创建数据挂载目录

# 统一管理Docker容器的数据文件,geoserver
mkdir -p /mydata/geoserver

# 创建geoserver的挂载数据目录
mkdir -p /mydata/geoserver/data_dir

# 创建geoserver的挂载数据目录,存放shp数据
mkdir -p /mydata/geoserver/data_dir/shp

2 拉取镜像

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

# 获取指定版本镜像(本次采用)
docker pull kartoza/geoserver:2.20.3

3 运行容器

# 运行容器(取消换行执行)
docker run
--name geoserver #容器名称
-d #后台运行容器,并返回容器ID
-p 8089:8089 #容器端口:服务端口 系统默认8089
-e GEOSERVER_ADMIN_USER=admin #指定管理用户
-e GEOSERVER_ADMIN_PASSWORD=geoserver #指定管理用户密码
-v /mydata/geoserver/data_dir:/data_dir #数据挂载地址
kartoza/geoserver:2.20.3 #镜像名称

docker run --name geoserver -d -p 8089:8089 -e GEOSERVER_ADMIN_USER=admin -e GEOSERVER_ADMIN_PASSWORD=geoserver -v /mydata/geoserver/data_dir:/data_dir kartoza/geoserver:2.20.3

# 此处有坑,网上很多教程并没有指定管理用户,此版本部署时就遇到了默认账户admin登陆不上去的问题,指定后可解决
# 设置开机自启
docker update geoserver --restart=always

4 测试使用(发布shp数据为服务)

(1)访问GeoServer的web地址: ip:8089/geoserver

(2)登录

账户名:admin
账户密码:geoserver

(3)创建工作区

4)上传数据到linux的shp数据挂载目录

(5)添加shp数据存储

数据存储-添加新的数据存储-shp数据-选择挂载的目录中的数据项

(6)服务发布

图层-添加新的资源-添加图层-发布

(7)服务预览