hsldevcom/opentripplanner-data-container-waltti-altOpenTripPlanner-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
将本地 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
通过环境变量指定 GTFS/OSM 数据下载 URL,容器启动时自动下载并解压数据:
bashdocker run -d \ --name otp-data \ -e GTFS_URL=[***] \ # GTFS 数据下载 URL -e OSM_URL=[***] \ # 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=[***] - OSM_URL=[***] - 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,用逗号分隔) | 无 | [***] |
OSM_URL | OSM 数据下载 URL(单个 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
manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务