Hyperledger Fabric1.4实例开发调试—运行第一个区块链程序

在 我们建立好了基本的超级账本运行环境,不过有几点需要说明一下

  • 头条把命令行源码的一些字符给屏蔽了,有些可能不能正常运行,可以根据实际情况做一些调整。
  • node.js最好使用源码安装,版本是8.9.4,否则后期可能因为墙的原因导致不成功。
  • 如果系统没有安装git,可以安装一下 yum install git
  • 因为大天朝伟大的防火墙,后期运行代码第一个程序的时候有可能会一直卡在 node-pre-gyp WARN Using request for node-pre-gyp https download 这里,为了防止这种情况发生,最好先执行一下这个命令: npm install [email protected] -g

下面我们开始示例代码的下载过程:

1.载示例代码

可以转到一个特定的目录,比如/opt/fabric,然后开始下载

wget https://raw.githubusercontent.com/hyperledger/fabric/master/scripts/bootstrap.sh

2.给bootstrap.sh添加运行权限

 chmod +x bootstrap.sh

3.运行bootstrap.sh,下载代码和需要的二进制文件

 ./bootstrap.sh

4.查看下载内容,经过较长时间后,会把各种文件下载完毕,也就是会生成一个fabric-samples文件夹,该文件夹具有如下内容:

Hyperledger Fabric1.4实例开发调试—运行第一个区块链程序

5.把bin文件夹加入到PATH环境变量,通过编辑 /etc/profile ,添加export PATH=/opt/fabric/fabric-samples/bin:$PATH

这样,我们就完成了示例代码和所需二进制文件的下载。

然后开始我们的第一个示例程序的运行。

1.清除运行环境(如果确实是第一次运行,没有运行过其他超级账本网络,可以不执行这一步)

进入first-network目录,执行下面的命令

./byfn.sh down

根据提示,选择y,可能的运行结果如下:

Hyperledger Fabric1.4实例开发调试—运行第一个区块链程序

然后运行清除docker的指令:

docker rm -f $(docker ps -aq)
docker rmi -f $(docker images | grep fabcar | awk '{print $3}')

可能的运行结果如下:

Hyperledger Fabric1.4实例开发调试—运行第一个区块链程序

2.进入fabcar目录,运行如下的指令,运行时间可能需要几十秒

./startFabric.sh javascript
Hyperledger Fabric1.4实例开发调试—运行第一个区块链程序

3.进入fabcar/javascript目录,运行如下指令

npm install
Hyperledger Fabric1.4实例开发调试—运行第一个区块链程序

运行后的文件夹内如如下:

Hyperledger Fabric1.4实例开发调试—运行第一个区块链程序

4.登记admin用户,运行如下指令

node enrollAdmin.js

Hyperledger Fabric1.4实例开发调试—运行第一个区块链程序

5.注册并登记用户user1

node registerUser.js

Hyperledger Fabric1.4实例开发调试—运行第一个区块链程序

这样,我们把admin和user1都存储在wallet里了

6.下面我们就开始写我们的智能合约程序,首先先试试查询,把所有车辆信息查询出来

node query.js
Hyperledger Fabric1.4实例开发调试—运行第一个区块链程序

把查询结果可以格式化成json格式

Hyperledger Fabric1.4实例开发调试—运行第一个区块链程序

嗯,这就是我们第一个智能合约程序,从区块链里把需要的数据查询出来了。

未完待续


分享到:


相關文章: