时间:2023年3月16日星期四
开发环境搭建
本部分主要设计fabric环境安装
Fabric应用程序堆栈有五层
必备软件:运行该软件所需的基础层,例如Docker。
Fabric和Fabric示例:Fabric可执行文件与示例代码一起运行Fabric网络。
合约API:开发在Fabric网络上执行的智能合约。
应用程序SDK:开发您的区块链应用程序。
应用程序:您的区块链应用程序将利用应用程序SDK调用在Fabric网络上运行的智能合约。
fabric核心模块
模块名词 |
功能 |
类型 |
peer |
主节点模块,负责存储区块链数据,运行维护代码 |
系统模块 |
order |
交易打包,排序模块 |
系统模块 |
cryptogen |
组织和证书生成模块 |
工具模块 |
configtxgen |
区块和交易生成模块 |
工具模块 |
configtxlator |
区块和交易解析模块 |
工具模块 |
工具模块负责证书文件,区块链创始块,通道创始块等相关文件和证书的生成工作,不参与系统的运行。
cryptogen:模块主要用于生成组织结构和账号相关文件,任何fabric系统的开发都是从cryptogen模块开始,在系统设计完成后首要工作就是根据系统设计编写cryptogen的配置文件。
configtxgen:
开发环境
官方文档:https://hyperledger-fabric.readthedocs.io/en/latest/getting_started.html
系统:Windows
必备软件
先决条件
git:版本管理工具 官网下载地址:https://git-scm.com/downloads
cURL:curl命令是个功能强大的网络工具,支持通过http、ftp等方式下载文件、上传文件
Docker & Docker-compose:一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化
官网下载:https://desktop.docker.com/win/main/amd64/Docker%20Desktop%20Installer.exe
Go:Docker是基于go语言的
(only required if you will be writing Go chaincode or SDK applications)
JQ:既JQuery,一个优秀的javascript类库
(only required for the tutorials related to channel configuration transactions)
加速
docker镜像在国外,为了后续下载加速,配置文件将镜像换成国内的
"registry-mirrors": [
"http://hub-mirror.c.163.com",
"https://mirror.baidubce.com"
]
拉取fabric