Hyperledger Fabric Starter 项目教程
1. 项目的目录结构及介绍
fabric-starter
项目的目录结构如下:
fabric-starter/
├── chaincode/
├── container-scripts/
├── docker/
├── docs/
├── environments/
├── examples/
│ └── fabric-token-transfer/
├── external-builders/
├── extra/
├── fabric-tools-extended/
├── https/
├── kubernetes/
├── lib/
├── middleware/
├── raft/
├── templates/
├── test/
└── webapp/
目录介绍:
- chaincode/: 存放链码(智能合约)的目录。
- container-scripts/: 包含用于容器化部署的脚本。
- docker/: 包含 Docker 相关的配置文件和脚本。
- docs/: 存放项目文档。
- environments/: 包含不同环境的配置文件。
- examples/: 包含示例项目,如
fabric-token-transfer
。 - external-builders/: 外部构建器的配置文件。
- extra/: 额外的工具和脚本。
- fabric-tools-extended/: 扩展的 Fabric 工具。
- https/: HTTPS 相关的配置文件。
- kubernetes/: Kubernetes 部署相关的配置文件和脚本。
- lib/: 项目依赖的库文件。
- middleware/: 中间件相关的配置文件。
- raft/: RAFT 共识算法相关的配置文件和脚本。
- templates/: 模板文件。
- test/: 测试相关的文件和脚本。
- webapp/: 存放 Web 应用程序的目录。
2. 项目的启动文件介绍
项目的启动文件主要集中在根目录和 docker/
目录下。以下是一些关键的启动文件:
- docker-compose.yaml: Docker Compose 配置文件,用于定义和运行多容器 Docker 应用程序。
- main.sh: 主启动脚本,用于启动 Hyperledger Fabric 网络。
- generate-orderer.sh: 生成 Orderer 节点的脚本。
- generate-peer.sh: 生成 Peer 节点的脚本。
- network-create.sh: 创建网络的脚本。
- network-add-org.sh: 添加组织的脚本。
启动流程:
- 生成加密材料和配置文件: 使用
generate-orderer.sh
和generate-peer.sh
生成 Orderer 和 Peer 节点的加密材料和配置文件。 - 启动网络: 使用
main.sh
或network-create.sh
启动 Hyperledger Fabric 网络。 - 添加组织: 如果需要添加新的组织,使用
network-add-org.sh
。
3. 项目的配置文件介绍
项目的配置文件主要集中在根目录和 environments/
目录下。以下是一些关键的配置文件:
- env: 环境变量配置文件,定义了项目运行所需的各种环境变量。
- docker-compose.yaml: Docker Compose 配置文件,定义了容器的服务、网络和卷。
- orderer.yaml: Orderer 节点的配置文件。
- core.yaml: Peer 节点的配置文件。
- configtx.yaml: 定义通道配置的文件。
配置文件的作用:
- env: 用于设置环境变量,如 Fabric 版本、组织名称等。
- docker-compose.yaml: 定义了 Docker 容器的配置,包括服务、网络和卷。
- orderer.yaml: 配置 Orderer 节点的行为和属性。
- core.yaml: 配置 Peer 节点的行为和属性。
- configtx.yaml: 定义通道的配置,包括组织、策略等。
通过这些配置文件,可以灵活地调整 Hyperledger Fabric 网络的行为和属性,以满足不同的需求。