本站支持搜索的镜像仓库:Docker Hub、gcr.io、ghcr.io、quay.io、k8s.gcr.io、registry.gcr.io、elastic.co、mcr.microsoft.com
MapServer Docker 镜像是基于开源地理信息系统(GIS)服务器 MapServer 的容器化部署方案。该镜像旨在简化 MapServer 的安装、配置和运行流程,提供跨平台、隔离化的地图服务部署环境。主要用途包括地理空间数据发布、Web 地图服务(如 WMS/WFS/WCS)提供、地图可视化及空间数据分析等场景。
从 Docker Hub 或 GitHub Container Registry 拉取镜像(具体地址需参考官方文档):
docker pull camptocamp/mapserver:latest
docker run)docker run -d -p 80:80 --name mapserver camptocamp/mapserver:latest
-d:后台运行容器。-p 80:80:将容器内 80 端口映射到主机 80 端口(MapServer 默认 HTTP 端口)。--name mapserver:指定容器名称为 mapserver。启动后,访问 http://localhost 可验证服务是否正常(默认可能返回示例地图或服务列表)。
MapServer 的核心配置通过 MapFile 定义,需将本地配置文件和数据挂载到容器内。假设本地目录结构如下:
./mapserver/ ├── mapfiles/ # 存放 MapFile 文件(如 mymap.map) └── data/ # 存放地理数据(如 Shapefile、GeoTIFF)
运行命令:
docker run -d \ -p 8080:80 \ --name mapserver \ -v $(pwd)/mapserver/mapfiles:/etc/mapserver/mapfiles \ -v $(pwd)/mapserver/data:/etc/mapserver/data \ camptocamp/mapserver:latest \ sh -c "mapserver -k 'REQUEST=GetCapabilities&SERVICE=WMS&VERSION=1.3.0' /etc/mapserver/mapfiles/mymap.map"
-v $(pwd)/mapserver/mapfiles:/etc/mapserver/mapfiles:挂载本地 MapFile 目录到容器内配置目录。-v $(pwd)/mapserver/data:/etc/mapserver/data:挂载本地数据目录到容器内数据目录。mymap.map)并验证 WMS 服务能力。docker-compose 配置示例创建 docker-compose.yml 文件,定义服务、卷挂载和端口映射:
version: '3.8' services: mapserver: image: camptocamp/mapserver:latest container_name: mapserver ports: - "8080:80" # 主机端口:容器端口 volumes: - ./mapserver/mapfiles:/etc/mapserver/mapfiles:ro # 只读挂载配置文件 - ./mapserver/data:/etc/mapserver/data:ro # 只读挂载数据文件 - ./mapserver/logs:/var/log/mapserver # 挂载日志目录(可选) restart: unless-stopped # 容器退出时自动重启(除非手动停止) environment: - TZ=Asia/Shanghai # 设置时区(可选) - LOG_LEVEL=INFO # 设置日志级别(可选,如 DEBUG/INFO/WARN/ERROR)
启动服务:
docker-compose up -d
MapFile 是 MapServer 的核心配置文件,定义地图图层、数据源、投影、样式等。需将自定义 MapFile 挂载到容器内的 /etc/mapserver/mapfiles 目录,并通过启动命令或环境变量指定加载路径。
示例 MapFile(mymap.map)片段:
MAP NAME "MyMap" EXTENT -180 -90 180 90 # 全球范围 SIZE 800 600 PROJECTION "init=epsg:4326" # WGS84 坐标系 END LAYER NAME "Countries" TYPE POLYGON DATA "/etc/mapserver/data/countries.shp" # 容器内数据路径 CLASS STYLE COLOR 240 240 240 # 背景色 OUTLINECOLOR 0 0 0 # 边界色 END END END END
80:默认 HTTP 服务端口(用于提供 WMS/WFS 等 HTTP 服务)。| 环境变量 | 说明 | 默认值 |
|---|---|---|
TZ | 容器时区 | UTC |
LOG_LEVEL | 日志级别(DEBUG/INFO) | INFO |
MAPFILE_PATH | 默认加载的 MapFile 路径 | /etc/mapserver/mapfiles/default.map |
免费版仅支持 Docker Hub 加速,不承诺可用性和速度;专业版支持更多镜像源,保证可用性和稳定速度,提供优先客服响应。
免费版仅支持 docker.io;专业版支持 docker.io、gcr.io、ghcr.io、registry.k8s.io、nvcr.io、quay.io、mcr.microsoft.com、docker.elastic.co 等。
当返回 402 Payment Required 错误时,表示流量已耗尽,需要充值流量包以恢复服务。
通常由 Docker 版本过低导致,需要升级到 20.x 或更高版本以支持 V2 协议。
先检查 Docker 版本,版本过低则升级;版本正常则验证镜像信息是否正确。
使用 docker tag 命令为镜像打上新标签,去掉域名前缀,使镜像名称更简洁。
探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录方式配置轩辕镜像加速服务,包含7个详细步骤
在 Linux 系统上配置轩辕镜像源,支持主流发行版
在 Docker Desktop 中配置轩辕镜像加速,适用于桌面系统
在 Docker Compose 中使用轩辕镜像加速,支持容器编排
在 k8s 中配置 containerd 使用轩辕镜像加速
在宝塔面板中配置轩辕镜像加速,提升服务器管理效率
在 Synology 群晖NAS系统中配置轩辕镜像加速
在飞牛fnOS系统中配置轩辕镜像加速
在极空间NAS中配置轩辕镜像加速
在爱快ikuai系统中配置轩辕镜像加速
在绿联NAS系统中配置轩辕镜像加速
在威联通NAS系统中配置轩辕镜像加速
在 Podman 中配置轩辕镜像加速,支持多系统
配置轩辕镜像加速9大主流镜像仓库,包含详细配置步骤
无需登录即可使用轩辕镜像加速服务,更加便捷高效
需要其他帮助?请查看我们的 常见问题 或 官方QQ群: 13763429