支付宝红包
京东盲盒抽奖
幸运转盘
秒杀
自营热卖
支付宝红包

使用IBM blockchain platform开发、部署和测试一个Hyperledger fabric2.0智能合约

爱到最后是恩情 1年前   阅读数 150 0

主要学习如何使用Visual studio code 和 IBM blockchain platform 来开发,测试和部署一个Hyperledger fabric2.0智能合约,并且分析遇到的错误。

1、基础环境

windows10安装的虚拟机Ubuntu16.04

环境部署:Hyperledger fabric2.0(并且成功运行了测试网络)

下载Visual Studio code成功后点击下列图标搜索IBM BLOCKCHAIN PLATFORM

安装(自己想要部署什么语言的链码,也下载相应的依赖包)

安装成功后左侧栏会多其标志,点击进去后(要求必须的东西都下载好)开始部署链码

2、部署智能合约

2.1 增加智能合约

开始部署一个官方的增删改查例子作为实验①新建项目→②默认合约→③选择你想部署的语言,我选择javascript→④输入合约名字,输好按enter键确定(我使用的默认的MyAsset)→⑤选择路径(可以新建文件夹)→⑥选择add to workspace然后右下角会显示正在创建

然后会自动跳转到项目页面,会多一个我们刚刚部署的链码的项目

打开可以看到最基础的增删改查功能的合约代码

2.2导入智能合约

然后我们再次进入IBM BLOCKCHAIN PLATFORM平台选择打包开放的项目,如下图①②所示,可以看到选项有刚刚增加的项目,选择后,选择打包方式tar.gz

部署成功后会在你的智能合约里多一项你刚刚保存名称MyAsset的合约

3、通道中部署智能合约

到FABRIC ENVIRONMENTS下可以看到有个单一本地网络里面有默认的一个组织网络,点击它后开始运行(我这个是后续自己添加的,因为刚开始运行默认的出错了,)如果你也出错的话可以选择FABRIC ENVIRONMENTS后的+号自己添加

都默认第一个选项,然后命名ORG1然后我是v_2.0版本,此过程较慢,而且可能出错,我当时报错docker: failed to register layer: Error processing tar file(exit status 1)我当时是因为docker挂载区满了,我就删除之后重新运行成功了)

df -h /var/lib/docker   //查看容器挂载信息

docker rmi $(docker images -q)    //删除所有容器

成功后可以看到环境中有通道、节点、组织。然后①打开mychannel→②添加合约→③选择智能合约→④选择刚刚打包的智能合约→⑤Next→⑥Next→⑦Deploy

部署成功会看到mychannel里面多了一个智能合约

4、运行智能合约并测试

点击FABRIC GATEWAYS中的你刚刚创建的组织ORG1 Gateway,连接成功后会显示通道,打开通道可以看到刚刚部署的智能合约,点击进入之后交易可视化

这里会显示合约里所存在的功能函数,这个例子里的分别是查看现存资产、增删改查资产

我们可以新增资产,因为fabirc是k-v存储,arg0里面填key值,arg1填value值,然后点击提交

查询刚刚新增的资产就是value为10

更新资产

再查询已经更新成功,删除就是删除这个key值可以。

想要退出就是刚刚“+”号的位置有关退出的符号,可以依次退出相应环境。

ps:如果遇见报错可以尝试卸载IBM BLOCKCHAIN PLATFORM平台重新安装或者关闭所有容器并删除。


注意:本文归作者所有,未经作者允许,不得转载

全部评论: 0

    我有话说: