OpenTripPlanner-data-container 是 OpenTripPlanner (OTP) 生态系统的官方数据容器,专门用于存储和管理 OTP 出行规划服务运行所需的地理空间数据。该镜像为 OTP 服务提供标准化的数据存储结构,支持公共交通数据(GTFS)、街道地图数据(OSM)等核心数据集的集成、验证与版本管理,简化 OTP 服务部署流程中的数据准备工作。
opentripplanner 镜像)通过数据卷或网络共享实现数据联动,支持动态数据更新。.zip)或 OSM 数据文件(.pbf),或可访问公开数据下载 URL。从 Docker Hub 或 GitHub Container Registry 获取官方镜像:
bashdocker pull hsldevcom/opentripplanner-data-container:latest
1. 本地数据挂载模式
将本地 GTFS/OSM 数据目录挂载到容器,供 OTP 服务读取:
bashdocker run -d \ --name otp-data \ -v /path/to/local/data:/data \ # 本地数据目录(需包含 gtfs/ 和 osm/ 子目录) -e DATA_REGION=eu-west-1 \ # 可选:指定数据区域(用于日志和版本标记) -e LOG_LEVEL=info \ # 可选:日志级别(debug/info/warn/error) hsldevcom/opentripplanner-data-container:latest
说明:本地数据目录需按规范组织,例如:
/path/to/local/data/ ├── gtfs/ # GTFS 数据目录,存放 *.zip 文件 │ ├── city-bus.zip │ └── metro.zip └── osm/ # OSM 数据目录,存放 *.pbf 文件 └── city.osm.pbf
2. 远程数据下载模式
通过环境变量指定 GTFS/OSM 数据下载 URL,容器启动时自动下载并解压数据:
bashdocker run -d \ --name otp-data \ -e GTFS_URL=https://example.com/gtfs/city-bus.zip \ # GTFS 数据下载 URL -e OSM_URL=https://example.com/osm/city.osm.pbf \ # OSM 数据下载 URL -e DATA_PATH=/data \ # 容器内数据存储路径(默认 /data) hsldevcom/opentripplanner-data-container:latest
通过 docker-compose.yml 定义数据容器与 OTP 服务容器的联动,实现一键部署:
yamlversion: '3.8' services: otp-data: image: hsldevcom/opentripplanner-data-container:latest volumes: - otp-data-volume:/data # 持久化数据卷 environment: - GTFS_URL=https://transitfeeds.com/p/example/1234/latest/download - OSM_URL=https://download.geofabrik.de/europe/germany/berlin-latest.osm.pbf - AUTO_UPDATE=true # 启用每日自动数据更新(默认 false) - UPDATE_TIME=03:00 # 自动更新时间(UTC,默认 02:00) otp-service: image: opentripplanner:latest depends_on: - otp-data ports: - "8080:8080" volumes_from: - otp-data # 共享数据卷,直接访问 /data 目录 command: --basePath /data --server volumes: otp-data-volume: # 持久化数据卷,避免容器重启后数据丢失
| 环境变量名 | 描述 | 默认值 | 示例值 |
|---|---|---|---|
DATA_PATH | 容器内数据存储根目录 | /data | /opt/otp-data |
GTFS_URL | GTFS 数据下载 URL(支持多个 URL,用逗号分隔) | 无 | https://feed1.zip,https://feed2.zip |
OSM_URL | OSM 数据下载 URL(单个 PBF 文件) | 无 | https://berlin.osm.pbf |
AUTO_UPDATE | 是否启用每日自动数据更新(true/false) | false | true |
UPDATE_TIME | 自动更新执行时间(UTC,格式 HH:MM) | 02:00 | 03:30 |
LOG_LEVEL | 日志级别(debug/info/warn/error) | info | debug |
VALIDATE_DATA | 是否在数据加载前执行格式验证(true/false) | true | false |
DATA_REGION | 数据区域标记(用于日志和版本管理) | default | nordic-europe |
容器内 DATA_PATH 目录默认结构如下(自动创建):
/data/ ├── gtfs/ # GTFS 数据目录(存放下载或挂载的 *.zip 文件) ├── osm/ # OSM 数据目录(存放下载或挂载的 *.pbf 文件) ├── logs/ # 数据下载、验证、更新日志 └── versions/ # 历史版本数据备份(仅当启用版本管理时)
bashdocker exec -it otp-data /scripts/update-data.sh
bashdocker exec -it otp-data /scripts/check-data-status.sh
bashdocker exec -it otp-data /scripts/clean-versions.sh --keep 3
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录认证访问私有仓库
无需登录使用专属域名
Kubernetes 集群配置 Containerd
K3s 轻量级 Kubernetes 镜像加速
VS Code Dev Containers 配置
Podman 容器引擎配置
HPC 科学计算容器配置
ghcr、Quay、nvcr 等镜像仓库
Harbor Proxy Repository 对接专属域名
Portainer Registries 加速拉取
Nexus3 Docker Proxy 内网缓存
需要其他帮助?请查看我们的 常见问题Docker 镜像访问常见问题解答 或 提交工单
docker search 限制
站内搜不到镜像
离线 save/load
插件要用 plugin install
WSL 拉取慢
安全与 digest
新手拉取配置
镜像合规机制
manifest unknown
no matching manifest(架构)
invalid tar header(解压)
TLS 证书失败
DNS 超时
域名连通性排查
410 Gone 排查
402 与流量用尽
401 认证失败
429 限流
D-Bus 凭证提示
413 与超大单层
来自真实用户的反馈,见证轩辕镜像的优质服务