本站支持搜索的镜像仓库:Docker Hub、gcr.io、ghcr.io、quay.io、k8s.gcr.io、registry.gcr.io、elastic.co、mcr.microsoft.com

镜像名称:corpusops/pgrouting-bare
主要用途:提供集成PostgreSQL、PostGIS和pgRouting的稳定地理空间路由功能环境,专注于生产环境的版本控制与兼容性保障。
该镜像基于以下开源Docker镜像构建,继承其核心功能与最佳实践:
解决基础镜像版本标签模糊导致的生产环境非预期升级问题,通过显式版本标记(如X.Y.Z-pgrouting-A.B.C)确保部署环境的可追溯性与稳定性,避免因自动升级引发的兼容性风险。
| 功能特性 | 描述 |
|---|---|
| 稳定版本控制 | 明确的版本标签策略,杜绝生产环境因镜像标签(如latest)自动更新导致的版本混乱。 |
| 地理空间数据支持 | 集成PostGIS扩展,支持地理空间数据类型(点、线、面)、空间索引及空间查询。 |
| 路由算法集成 | 内置pgRouting扩展,提供Dijkstra、A*、最短路径、旅行商问题(TSP)等路径规划算法。 |
| 原生PostgreSQL兼容 | 完全继承官方PostgreSQL镜像的核心功能,包括数据持久化、用户权限管理、网络配置等。 |
| 生产环境适配 | 基于成熟基础镜像构建,通过显式版本控制满足生产环境对稳定性和可追溯性的要求。 |
docker run)docker run -d \ --name pgrouting-instance \ -e POSTGRES_PASSWORD=StrongPassword123 \ # 生产环境必填,建议使用强密码 -p 5432:5432 \ # 映射数据库端口 corpusops/pgrouting-bare:latest # 建议替换为具体版本标签(如14-3.4-13)
为避免版本漂移,生产环境需使用具体版本标签(格式通常为POSTGRESQL_VERSION-pgrouting-PGR_VERSION-postgis-PGIS_VERSION):
docker run -d \ --name pgrouting-instance \ -e POSTGRES_PASSWORD=StrongPassword123 \ -e POSTGRES_DB=gis_route_db \ # 自定义初始数据库名称 -v /host/data/pgrouting:/var/lib/postgresql/data \ # 持久化数据到宿主机 -p 5432:5432 \ corpusops/pgrouting-bare:14-3.4-13 # 示例:PostgreSQL 14 + pgRouting 3.4 + PostGIS 13
version: '3.8' services: pgrouting: image: corpusops/pgrouting-bare:14-3.4-13 # 固定版本标签 container_name: pgrouting-service restart: unless-stopped # 故障自动恢复 environment: POSTGRES_USER: gis_admin # 自定义管理员用户 POSTGRES_PASSWORD: ${DB_PASSWORD} # 建议通过环境变量注入密码 POSTGRES_DB: city_routing_db # 初始数据库名称 PGDATA: /var/lib/postgresql/data/pgdata # 自定义数据存储路径(可选) volumes: - pgrouting_data:/var/lib/postgresql/data # 命名卷持久化数据 - ./init-scripts:/docker-entrypoint-initdb.d # 挂载初始化脚本(如SQL文件) ports: - "5432:5432" # 宿主机端口:容器端口 volumes: pgrouting_data: # 自动创建的命名卷,独立于容器生命周期
| 环境变量名 | 描述 | 默认值 |
|---|---|---|
POSTGRES_USER | 数据库超级用户名称 | postgres |
POSTGRES_PASSWORD | 超级用户密码(生产环境必填,未设置将无法启动) | 无(必填) |
POSTGRES_DB | 初始化时自动创建的数据库名称 | 与POSTGRES_USER相同 |
PGDATA | 数据库数据存储路径 | /var/lib/postgresql/data |
POSTGRES_INITDB_ARGS | 传递给initdb的额外参数(如字符集配置:--encoding=UTF8 --lc-collate=C) | 无 |
通过-v参数挂载宿主机目录或Docker命名卷,确保容器删除后数据不丢失:
# 宿主机目录挂载(需确保权限正确) docker run -v /data/pgrouting:/var/lib/postgresql/data ... # 命名卷挂载(推荐,由Docker管理权限) docker run -v pgrouting_data:/var/lib/postgresql/data ...
容器启动后,可通过psql连接验证pgRouting扩展是否正常安装:
# 进入容器内数据库终端 docker exec -it pgrouting-instance psql -U postgres -d city_routing_db # 验证pgRouting扩展 SELECT pgr_version(); # 返回pgRouting版本信息即表示安装成功


免费版仅支持 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