专属域名
文档搜索
轩辕助手
Run助手
邀请有礼
返回顶部
快速返回页面顶部
收起
收起工具栏

oscarfonts/geoserver Docker 镜像 - 轩辕镜像

geoserver
oscarfonts/geoserver
自动构建
基于官方Tomcat镜像部署GeoServer的Docker镜像,用于提供地理信息数据发布和空间服务功能。
34 收藏0 次下载activeoscarfonts镜像
🚀专业版镜像服务,面向生产环境设计
中文简介版本下载
🚀专业版镜像服务,面向生产环境设计

docker-geoserver 镜像文档

镜像概述与主要用途

基于 Docker 官方 Tomcat 镜像构建的 GeoServer 容器化部署方案,旨在提供便捷、可配置的 GeoServer 服务部署方式。主要用途是在容器环境中快速部署 GeoServer,支持自定义数据存储、扩展管理、权限控制等功能,适用于地理空间数据发布与管理场景。

重要说明:安全漏洞与版本要求

受严重安全漏洞影响的旧版 GeoServer 已从本仓库移除,以避免潜在风险。请尽可能升级至最新版本,或至少使用以下安全版本:

  • 若使用低于 2.23.x 的版本且无法升级,需自行 patch 并构建镜像(本仓库不提供支持或已 patch 的构建版本)。详情参考 CVE-2024-36401 官方公告。
  • 2.23.x 系列:至少使用 2.23.6
  • 2.24.x 系列:至少使用 2.24.5
  • 2.25.x 系列:至少使用 2.25.2
  • 2.26.0 及以上版本:不受此漏洞影响

若关注安全性并希望保持 GeoServer 良好运行状态,建议支持 3.0 版本的开发。

核心功能与特性

  • 基础镜像:基于 Docker 官方 Tomcat 镜像 tomcat:9-jre17 构建。
  • 安全运行:以非 root 用户身份运行 tomcat 进程。
  • 数据目录分离:GEOSERVER_DATA_DIR 独立存储于 /var/local/geoserver。
  • 可配置扩展:支持自定义扩展安装。
  • 权限管理:支持注入自定义 UID/GID,优化挂载卷的权限控制。
  • CORS 支持:默认配置跨域资源共享(CORS),参考 enable-cors.org。
  • JVM 参数优化:已按 GeoServer 生产环境要求配置 JVM 参数,参考 GeoServer 文档。
  • 字体兼容性:自动安装 Microsoft Core Fonts,提升标签渲染兼容性,参考 Microsoft 字体页面。
  • 自定义部署路径:支持修改 GeoServer 基础访问路径。
  • 健康检查:内置 Docker 健康检查机制。

可信构建版本

以下版本提供自动化构建,可从 Docker Hub 获取:

  • latest, 2.27.2(2.27.2/Dockerfile)
  • 2.26.4(2.26.4/Dockerfile)
  • 2.25.7(2.25.7/Dockerfile)
  • 2.24.5(2.24.5/Dockerfile)
  • 2.23.6(2.23.6/Dockerfile)

非支持构建版本(实验性)

以下为实验性 Dockerfile(非自动化构建),更适合作为参考示例而非生产环境使用:

  • oracle:基于 wnameless/oracle-xe-11g,需手动提供 ojdbc7.jar 并配置数据库(参考 setup.sql),运行命令见 run.sh。
  • h2-vector:与 oscarfonts/h2:geodb 兼容,包含 docker-compose 和 systemd 示例脚本。
  • 已弃用 ecw:为旧版 GeoServer 添加带 ECW 支持的 GDAL 插件,已停止分发,需升级至新版本。

使用方法

拉取镜像
bash
docker pull oscarfonts/geoserver
自定义 GEOSERVER_DATA_DIR

作为服务运行,暴露 8080 端口并挂载本地数据目录:

bash
docker run -d -p 8080:8080 -v ${PWD}/data_dir:/var/local/geoserver oscarfonts/geoserver
自定义基础路径

构建镜像时,通过 GEOSERVER_PATH 参数修改 GeoServer 基础访问路径,默认值为 /geoserver。

自定义 UID 和 GID

通过环境变量 CUSTOM_UID 和 CUSTOM_GID 自定义 tomcat 用户的 UID 和 GID,确保挂载的 data_dir 和 exts_dir 可被容器内外用户共同访问:

bash
docker run -d -p 8080:8080 -e CUSTOM_UID=$(id -u) -e CUSTOM_GID=$(id -g) oscarfonts/geoserver
自定义扩展

如需添加扩展,提供包含未解压扩展包的目录(每个扩展一个子目录),挂载至 /var/local/geoserver-exts/:

bash
docker run -d -p 8080:8080 -v ${PWD}/exts_dir:/var/local/geoserver-exts/ oscarfonts/geoserver

可使用 build_exts_dir.sh 脚本配合 extensions 配置文件 快速创建扩展目录。

警告:扩展目录中的 .jar 文件将被复制到 GeoServer 的 WEB-INF/lib 目录,仅添加来自可信来源的文件以避免安全风险。

自定义配置目录

通过挂载 Catalina 配置目录自定义上下文路径:

bash
docker run -d -p 8080:8080 -v ${PWD}/config_dir:/usr/local/tomcat/conf/Catalina/localhost oscarfonts/geoserver
CORS 配置

默认已启用 CORS 并配置于 servlet 的 web.xml 过滤器中。若前端已处理跨域,可通过环境变量禁用:

bash
docker run -d -p 8080:8080 -e "GEOSERVER_CORS_ENABLED=false" oscarfonts/geoserver

可通过以下环境变量微调 CORS 策略(参考 Tomcat 文档):

  • GEOSERVER_CORS_ALLOWED_ORIGINS:允许的源(对应 cors.allowed.origins)
  • GEOSERVER_CORS_ALLOWED_METHODS:允许的 HTTP 方法(对应 cors.allowed.methods)
  • GEOSERVER_CORS_ALLOWED_HEADERS:允许的请求头(对应 cors.allowed.headers)
  • GEOSERVER_CORS_URL_PATTERN:过滤器匹配的 URL 模式(对应 filter-mapping url-pattern)

使用场景与适用范围

  • 适用场景:需容器化部署 GeoServer 的开发、测试及生产环境;需要自定义数据存储、扩展插件或权限管理的场景;对跨域访问、JVM 性能有要求的地理空间服务部署。
  • 版本选择:生产环境建议使用“可信构建版本”中的安全版本(2.23.6+、2.24.5+、2.25.2+、2.26.0+);实验性版本(如 oracle、h2-vector)仅用于功能验证或学习参考,非生产就绪。
查看更多 geoserver 相关镜像 →
georchestra/geoserver logo
georchestra/geoserver
by georchestra
geOrchestra SDI的GeoServer模块
210K+ pulls
上次更新:20 天前
geonode/geoserver logo
geonode/geoserver
by geonode
用于GeoNode的GeoServer镜像,提供地理空间数据发布与管理服务,支持在GeoNode环境中集成地图服务功能。
431M+ pulls
上次更新:1 个月前
thinkwhere/geoserver logo
thinkwhere/geoserver
by thinkwhere
GeoServer地理信息服务器Docker镜像,用于发布地图数据和提供空间服务,支持多种地理信息标准,实现便捷部署与地理空间服务快速搭建。
15500K+ pulls
上次更新:6 个月前
ndscprm/geoserver logo
ndscprm/geoserver
by ndscprm
CPRM定制的GeoServer地理空间数据服务器镜像,用于发布、管理和共享地理空间数据,支持OGC标准服务。
100K+ pulls
上次更新:1 个月前
kartoza/geoserver logo
kartoza/geoserver
by kartoza
kartoza/geoserver 是基于开源GeoServer构建的Docker镜像,可快速部署和运行地理空间数据服务器,完整支持OGC标准(如WMS、WFS、WCS),方便用户轻松发布、管理和可视化各类地理数据,适用于GIS应用、地图服务和空间数据分析场景。容器化设计简化部署流程,确保跨平台运行一致性,内置优化配置提供稳定高效的地图服务能力,帮助开发者和系统管理员快速搭建地理数据服务平台,有效降低GIS系统搭建复杂度,加速地理空间应用开发与部署。
1655M+ pulls
上次更新:1 个月前
geosolutionsit/geoserver logo
geosolutionsit/geoserver
by geosolutionsit
在Docker中运行GeoServer的镜像,基于Tomcat 9、JDK 11(Eclipse Temurin)和Ubuntu Jammy(22.04 LTS),支持数据目录持久化、环境变量配置、CORS、自定义字体及插件管理,提供灵活部署和运维能力。
16100K+ pulls
上次更新:5 天前

轩辕镜像配置手册

探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式

登录仓库拉取

通过 Docker 登录认证访问私有仓库

Linux

在 Linux 系统配置镜像服务

Windows/Mac

在 Docker Desktop 配置镜像

Docker Compose

Docker Compose 项目配置

K8s Containerd

Kubernetes 集群配置 Containerd

K3s

K3s 轻量级 Kubernetes 镜像加速

宝塔面板

在宝塔面板一键配置镜像

群晖

Synology 群晖 NAS 配置

飞牛

飞牛 fnOS 系统配置镜像

极空间

极空间 NAS 系统配置服务

爱快路由

爱快 iKuai 路由系统配置

绿联

绿联 NAS 系统配置镜像

威联通

QNAP 威联通 NAS 配置

Podman

Podman 容器引擎配置

Singularity/Apptainer

HPC 科学计算容器配置

其他仓库配置

ghcr、Quay、nvcr 等镜像仓库

专属域名拉取

无需登录使用专属域名

需要其他帮助?请查看我们的 常见问题Docker 镜像访问常见问题解答 或 提交工单

镜像拉取常见问题

轩辕镜像免费版与专业版有什么区别?

免费版仅支持 Docker Hub 访问,不承诺可用性和速度;专业版支持更多镜像源,保证可用性和稳定速度,提供优先客服响应。

轩辕镜像支持哪些镜像仓库?

专业版支持 docker.io、gcr.io、ghcr.io、registry.k8s.io、nvcr.io、quay.io、mcr.microsoft.com、docker.elastic.co 等;免费版仅支持 docker.io。

流量耗尽错误提示

当返回 402 Payment Required 错误时,表示流量已耗尽,需要充值流量包以恢复服务。

410 错误问题

通常由 Docker 版本过低导致,需要升级到 20.x 或更高版本以支持 V2 协议。

manifest unknown 错误

先检查 Docker 版本,版本过低则升级;版本正常则验证镜像信息是否正确。

镜像拉取成功后,如何去掉轩辕镜像域名前缀?

使用 docker tag 命令为镜像打上新标签,去掉域名前缀,使镜像名称更简洁。

查看全部问题→

用户好评

来自真实用户的反馈,见证轩辕镜像的优质服务

oldzhang的头像

oldzhang

运维工程师

Linux服务器

5

"Docker访问体验非常流畅,大镜像也能快速完成下载。"

轩辕镜像
镜像详情
...
oscarfonts/geoserver
官方博客Docker 镜像使用技巧与技术博客
热门镜像查看热门 Docker 镜像推荐
一键安装一键安装 Docker 并配置镜像源
提交工单
免费获取在线技术支持请 提交工单,官方QQ群:13763429 。
轩辕镜像面向开发者与科研用户,提供开源镜像的搜索和访问支持。所有镜像均来源于原始仓库,本站不存储、不修改、不传播任何镜像内容。
免费获取在线技术支持请提交工单,官方QQ群: 。
轩辕镜像面向开发者与科研用户,提供开源镜像的搜索和访问支持。所有镜像均来源于原始仓库,本站不存储、不修改、不传播任何镜像内容。
官方邮箱:点击复制邮箱
©2024-2026 源码跳动
官方邮箱:点击复制邮箱Copyright © 2024-2026 杭州源码跳动科技有限公司. All rights reserved.
轩辕镜像 官方专业版 Logo
轩辕镜像轩辕镜像官方专业版
首页个人中心搜索镜像
交易
充值流量我的订单
工具
提交工单镜像收录一键安装
Npm 源Pip 源Homebrew 源
帮助
常见问题
其他
关于我们网站地图

官方QQ群: 13763429