Cardano DB Sync 项目安装与使用教程
1. 项目目录结构及介绍
Cardano DB Sync 项目的目录结构如下:
cardano-db-sync/
├── cardano-db/
├── cardano-db-sync/
├── cardano-db-tool/
├── config/
├── custom-config/
├── doc/
├── docs/
├── monitoring/
├── nix/
├── schema/
├── scripts/
├── .gitattributes
├── .gitignore
├── .hlint.yaml
├── CHANGELOG.md
├── CODE-OF-CONDUCT.md
├── CODEOWNERS
├── CONTRIBUTING.rst
├── LICENSE
├── NOTICE
├── README.md
├── bors.toml
├── cabal.project
├── docker-compose.example.yml
├── docker-compose.yml
├── docker-test.yml
├── flake.lock
├── flake.nix
├── fourmolu.yaml
└── ...
目录介绍
- cardano-db/: 定义了项目中使用的公共数据类型和数据库模式。
- cardano-db-sync/: 核心组件,负责从 Cardano 链中同步数据到 PostgreSQL 数据库。
- cardano-db-tool/: 用于管理数据库的工具,如创建和运行迁移、验证和分析数据库。
- config/: 包含项目的配置文件。
- custom-config/: 自定义配置文件目录。
- doc/ 和 docs/: 包含项目的文档。
- monitoring/: 监控相关文件。
- nix/: 使用 Nix 包管理器的相关文件。
- schema/: 数据库模式定义文件。
- scripts/: 项目中使用的脚本文件。
- .gitattributes 和 .gitignore: Git 配置文件。
- .hlint.yaml: Haskell 代码风格检查配置文件。
- CHANGELOG.md: 项目变更日志。
- CODE-OF-CONDUCT.md: 项目行为准则。
- CODEOWNERS: 代码所有者配置文件。
- CONTRIBUTING.rst: 贡献指南。
- LICENSE 和 NOTICE: 项目许可证和版权声明。
- README.md: 项目介绍和使用说明。
- bors.toml: Bors 配置文件。
- cabal.project: Cabal 项目配置文件。
- docker-compose.example.yml 和 docker-compose.yml: Docker Compose 配置文件。
- docker-test.yml: Docker 测试配置文件。
- flake.lock 和 flake.nix: Nix Flake 配置文件。
- fourmolu.yaml: Fourmolu 代码格式化工具配置文件。
2. 项目启动文件介绍
Cardano DB Sync 项目的启动文件主要位于 cardano-db-sync/
目录下。启动项目的主要命令如下:
cardano-db-sync --config config/configuration.yaml --socket-path /path/to/socket --state-dir /path/to/state
参数说明
- --config: 指定配置文件路径。
- --socket-path: 指定与 Cardano 节点通信的 Unix 域套接字路径。
- --state-dir: 指定状态目录路径。
3. 项目的配置文件介绍
Cardano DB Sync 项目的配置文件主要位于 config/
目录下。主要的配置文件是 configuration.yaml
。
配置文件示例
dbSync:
db:
host: "localhost"
port: 5432
user: "cardano"
password: "password"
dbname: "cardano"
node:
socketPath: "/path/to/socket"
stateDir: "/path/to/state"
配置项说明
- dbSync: 数据库同步配置。
- db: 数据库连接配置。
- host: 数据库主机地址。
- port: 数据库端口。
- user: 数据库用户名。
- password: 数据库密码。
- dbname: 数据库名称。
- node: Cardano 节点配置。
- socketPath: 与 Cardano 节点通信的 Unix 域套接字路径。
- stateDir: 状态目录路径。
- db: 数据库连接配置。
通过以上配置,可以启动 Cardano DB Sync 项目并开始同步 Cardano 链上的数据到 PostgreSQL 数据库。