https://github.com/kartoza/docker-geoserver
# TOMCAT_VERSION=9.0.65
# 1. 下载满足要求的geoserver
docker pull kartoza/geoserver:2.21.1
# 2. 准备需要的插件,网络原因可能下载失败,多试试
wget https://sourceforge.net/projects/geoserver/files/GeoServer/2.21.1/extensions/geoserver-2.21.1-vectortiles-plugin.zip
wget https://sourceforge.net/projects/geoserver/files/GeoServer/2.21.1/extensions/geoserver-2.21.1-mongodb-plugin.zip
# 3. 自定义用户密码 启动docker ,数据路径按需求挂载出来/opt/geoserver/data_dir
docker run -d -p 7801:8080 -e GEOSERVER_ADMIN_PASSWORD=geoserver -e GEOSERVER_ADMIN_USER=admin --name geoserver kartoza/geoserver:2.21.1
# 添加插件
docker exec -it geoserver sh
unzip /geoserver-2.21.1-mongodb-plugin.zip -d /usr/local/tomcat/webapps/geoserver/WEB-INF/lib
unzip /geoserver-2.21.1-vectortiles-plugin.zip -d /usr/local/tomcat/webapps/geoserver/WEB-INF/lib
docker restart geoserver
# 4. 服务登陆界面
http://127.0.0.1:7801/geoserver/web/?1
user:admin pwd:geoserver
# 登陆界面,选择“存储仓库-添加新的存储仓库即可发现相关插件已经安装”
Dockerfile方式
FROM kartoza/geoserver:2.21.1
WORKDIR /
ADD . /
#RUN wget https://sourceforge.net/projects/geoserver/files/GeoServer/2.21.1/extensions/geoserver-2.21.1-vectortiles-plugin.zip
#RUN wget https://sourceforge.net/projects/geoserver/files/GeoServer/2.21.1/extensions/geoserver-2.21.1-mongodb-plugin.zip
RUN unzip -o /geoserver-2.21.1-mongodb-plugin.zip -d /usr/local/tomcat/webapps/geoserver/WEB-INF/lib
RUN unzip -o /geoserver-2.21.1-vectortiles-plugin.zip -d /usr/local/tomcat/webapps/geoserver/WEB-INF/lib
geoserver-mongo-vectortiles ls -l
total 10408
-rw-r--r-- 1 icey staff 506 9 2 10:10 Dockerfile
-rw-r--r--@ 1 icey staff 2575702 9 1 16:03 geoserver-2.21.1-mongodb-plugin.zip
-rw-r--r--@ 1 icey staff 1884635 9 1 16:10 geoserver-2.21.1-vectortiles-plugin.zip
# build镜像
docker build . -t geoserver-mongo-vectortiles:2.21.1
# 启动
docker run -d -p 7802:8080 -e GEOSERVER_ADMIN_PASSWORD=geoserver -e GEOSERVER_ADMIN_USER=admin --name geoserver-mongo-vectortiles geoserver-mongo-vectortiles:2.21.1
# 镜像存档
docker save geoserver-mongo-vectortiles:2.21.1 | gzip > ./geoserver-mongo-vectortiles-2.21.1.tar.gz
docker load < geoserver-mongo-vectortiles-2.21.1.tar.gz