本文介绍如何使用Hyperledger Composer创建简单的区块链应用程序。
安装先决条件首先,您必须安装Hyperledger Composer所需的先决条件。您需要安装以下内容:
- Docker Compose
- Node
- Npm
- Git
- Python
- 代码编辑器
可在此处找到有关先决条件安装的详细信息:安装先决条件安装开发工具安装先决条件后,我们需要安装应用程序开发所需的不同组件(开发工具)。
以下是上述安装开发工具链接中定义的步骤:
1. 安装CLI工具
npm install -g composer-cli@0.20
2.用于在计算机上运行REST Server以生成业务网络的RESTful API的实用程序:
npm install -g composer-rest-server@0.20
3.生成应用程序资产的程序
npm install -g generator-hyperledger-composer@0.20
4. 生成应用程序的Yeamon工具:
npm install -g yo
5.安装playground
npm install -g composer-playground@0.20
6.安装Hyperledger Fabric
在计算机主目录中创建一个fabric-dev-servers的目录,然后进入新创建的目录:
mkdir ~/fabric-dev-servers && cd ~/fabric-dev-servers
7.下载.tar.gz解压放在Hyperledger Fabric下:
curl -O https://raw.githubusercontent.com/hyperledger/composer-tools/master/packages/fabric-dev-servers/fabric-dev-servers.tar.gz
或者,如果要下载.zip文件而不是.tar.gz,则可以运行以下命令:
curl -O https://raw.githubusercontent.com/hyperledger/composer-tools/master/packages/fabric-dev-servers/fabric-dev-servers.zip
解压缩下载的.tar.gz文件:
tar -xvf fabric-dev-servers.tar.gz
或者,如果已下载.zip文件,则运行以下命令将其解压缩:
unzip fabric-dev-servers.zip
请记住,您应该在fabric-dev-servers文件夹中:
cd ~/fabric-dev-servers/
pwd /Users/mukeshchapagain/fabric-dev-servers
8. 创建环境变量FABRIC_VERSION
export FABRIC_VERSION=hlfv12
9.下载Hyperledger Fabric v1.2运行包
要下载本地Hyperledger Fabric v1.2 runtime,请运行以下命令:
./downloadFabric.sh
您已成功安装了开发环境所需的所有内容。
启动和停止Hyperledger Fabric
只需确保您位于fabric-dev-servers文件夹中:
cd ~/fabric-dev-servers
运行以下命令以启动Hypeledger Fabric:
./startFabric.sh
运行以下命令以生成PeerAdmin卡:
./createPeerAdminCard.sh
如果要重新启动结构服务器,首先需要将其停止然后再次启动它:
./stopFabric.sh
./startFabric.sh
您也可以拆除Fabric服务器。为此,首先你必须停止Fabric服务器然后拆除它。
./stopFabric.sh
./teardownFabric.sh
如果您拆除Fabric服务器,那么下次启动它时,您必须创建对等管理员卡。因此,在拆除服务器之后,需要运行以下命令才能正确启动它:
./startFabric.sh
./createPeerAdminCard.sh
使用以下命令启动composer playground web app:
composer-playground
Hyperledger Composer Playground提供用户界面,您可以从中创建,部署和测试区块链业务网络。
创建Hypeledger Composer区块链应用程序
在本节中,我们不会使用composer playground。我们将手动创建模型,逻辑和查询文件,并使用命令行创建业务网络。
我们将创建一个商业网络。在我们的区块链解决方案中,我们定义:
- 数据模型
- 事务逻辑
- 访问控制规则
1.生成骨架业务网络
我们将使用Yeoman生成器来创建一个骨架业务网络。以下命令将创建一个包含业务网络所需的所有组件的目录。
yo hyperledger-composer:businessnetwork
确保您在fabric-dev-servers目录中。
pwd /Users/mukeshchapagain/fabric-dev-servers
当您输入Yeoman generator命令时,系统会要求您输入以下内容:
- 输入您的网络名称
- 输入您的网络描述
- 作者姓名,可以是您自己的名称
- 作者电子邮件,可以是您自己的电子邮件地址
- 许可证可以是Apache-2.0
- 您的网络的命名空间可以是类似org.example的.mynetwork
- 要求您创建空网络或填充网络。我们将选择填充的网络。填充的网络包含为区块链业务网络自动生成的所有必要文件。
$yo hyperledger-composer:businessnetwork |
5. 定义业务网络
区块链业务网络由以下组成:
- 资产
- 参与者
- 访问控制规则
- 事件(可选)
- 查询(可选)
业务网络中的一些重要文件是:
Model(
[b]models/org.example.mynetwork.cto[/b] |
- 包含所有助手,参与者和交易的类定义
更详细步骤见原文