2 个版本
0.1.1 | 2024 年 3 月 9 日 |
---|---|
0.1.0 | 2024 年 3 月 6 日 |
1062 在 数据库接口 中
460KB
9K SLoC
包含 (Zip 文件, 18KB) transitland-atlas-vscode-extension-0.0.2.vsix
安装依赖项
sudo apt install protobuf-compiler build-essential gcc pkg-config libssl-dev postgresql unzip wget
加载数据
将数据加载到 Postgres 数据库是一个多步骤的过程。请确保您的 Postgres 数据库正在运行,并且密码设置正确。
下载 Transitland 仓库
Transitland 作为 Catenary-Backend 的初始知识来源,并将静态数据和实时数据关联起来。通过以下方式下载和更新它:
git submodule init && git submodule update
如果您已经拥有它,请记住使用 git pull / 合并更改。为此,请切换到文件夹 transitland-atlas
并运行 git pull
下载 GTFS 静态数据
这会下载世界上所有 GTFS 静态数据。这一步可能需要一段时间,所以您可以玩一会儿 Minecraft / 摸一摸草地,然后再回来!
cargo run --release --bin transitlanddownload
解压和格式化 Zip 文件
./src/ingest_gtfs_schedule/unzip-statics.sh
将数据导入到 Postgres 数据库
cargo run --release --bin import -- --postgres "host=localhost user=postgres password=correcthorsebatterystaple" --threads 25 --startfresh true --isprod false
此命令写入 gtfs_stage
。如果想要清除临时目录,请省略 startfresh。
出于安全原因,您无法从当前版本删除生产数据库中的 gtfs
模式,这是生产数据库。
您也可以写入生产环境,特别是加载单个机构,如下所示。
cargo run --release --bin import -- --postgres "host=localhost user=postgres password=correcthorsebatterystaple" --threads 25 --startfresh false --limittostaticfeed f-9q9-caltrain --isprod true
将临时数据库移动到新的生产数据库。
将 gtfs_stage
表集移动到 gtfs
真的是很简单
cargo run --bin move_to_prod -- --postgres "host=localhost user=postgres password=correcthorsebatterystaple"
将到 prod 删除当前生产数据库,重命名临时数据库,然后提交更改。
您已经完成了!数据已完全准备好供用户使用!
运行应用程序
安装 Systemd 服务
sudo cp transitbackend.service /etc/systemd/system/transitbackend.service
sudo systemctl daemon-reload
sudo systemctl enable --now transitbackend.service
示例端点
https://127.0.0.1:5401/getroutesperagency?feed_id=f-9mu-orangecountytransportationauthority
https://127.0.0.1:5401/gettrip?feed_id=f-9mu-orangecountytransportationauthority&trip_id=10995882
对于贡献者
对于 Unix 用户,运行 git config core.hooksPath .githooks
是必需的。如果没有这项,拉取请求将不会合并。
目前没有为 Windows 用户提供的选项。请尝试使用 WSL Ubuntu。我们正在努力添加这项功能。
依赖项
~83MB
~1.5M SLoC