文档章节

初次编写chaincode并部署运行体验

fangYC
 fangYC
发布于 2017/08/19 17:37
字数 688
阅读 109
收藏 0
点赞 0
评论 0

#环境:

1、vmware和ubuntu虚拟客户机环境为ubuntu16.04.2 LTS和vm12.5.7
2、已经运行成功fabric1.0的byfn网络(可参考笔者的另一篇文章“hyperledger-fabric+docker安装体验”)

#说明:

1、方便起见,笔者利用byfn网络所带的脚本进行部署chaincode,并没有通过开发模式
2、以下描述的脚本中语句和内容都是原先的不经过修改的例子

#步骤:

1、在你喜欢的IDE上编写chaincode,这方面自行参考网上,和{你的目录}/fabric-samples/chaincode/下的几个链码例子,参考链接:http://www.cnblogs.com/studyzy/p/7360733.html

2、在{你的目录}/fabric-samples/chaincode/下新建一个文件夹,把写好的chaincode文件(***.go等所有相关文件)复制到该文件夹中,参考命令:

	cp {chaincode文件路径}/具体文件 {你的目录}/fabric-samples/chaincode/新文件夹/具体文件

3、打开first-network/scripts目录下的scripts.sh文件,按照如下步骤修改:

	1)找到脚本中的installChaincode函数,修改其中内容chaincode_example02为第二步新建的文件夹名字
	2)找到脚本中的instantiateChaincode函数,修改其中参数部分:
		如,["init","a","100","b","200"]中第一个参数是要做的对应操作,init对应chaincode中的Init方法(这一步中init不用改),其他的都会进入Invoke方法,具体见代码;第二个参数开始就是要传入chaincode的参数(args []string),根据代码需要进行修改
	3)找到脚本中的chaincodeQuery函数,修改同2,其中第一个参数根据chaincode中编写的Invoke方法内查询方法对应的字符串
	4)找到脚本中的chaincodeInvoke函数,修改同2,其中第一个参数根据chaincode中编写的Invoke方法内调用的方法对应的字符串
	5)找到#Query on chaincode on Peer0/Org1注释下的语句,把chaincodeQuery的第二个参数修改为你的chaincode在此时调用查询方法得到的结果(注意,如果结果中有空格,则只写以空格分隔的最后一部分。这个参数其实是用于脚本判断查询是否成功)
	6)找到#Query on chaincode on Peer3/Org2, check if the result is 90注释下的语句,同5一样修改,注意此时的查询结果不一定和5一样,因为在这之前经过了一次invoke,当然,具体看你的chaincode了

4、这时候就可以开启测试了,进入byfn.sh脚本目录,直接执行./byfn.sh -m up

5、进行测试:
	进入cli容器,执行查询、调用等命令测试chaincode是否正常运行,具体命令参考scripts.sh脚本或者参考http://hyperledger-fabric.readthedocs.io/en/latest/samples.html

DONE.

© 著作权归作者所有

共有 人打赏支持
fangYC
粉丝 0
博文 6
码字总数 5397
作品 0
揭阳
程序员
虚拟货币,山寨币开发多节点集群的部署(1)

区块链爱好者(QQ:53016353) 虚拟货币 Fabric 1.0即将揭开面纱,社区用户对此充满期待。为迎接 Fabric 1.0 的发布,本文分3期连载,介绍如何搭建多节点的分布式 Fabric 集群,文后可下载P...

jqq53016353 ⋅ 2017/12/07 ⋅ 0

用Java为Hyperledger Fabric(超级账本)开发区块链链代码智能合约之编写链代码程序

编写第一个 Java 链代码程序 在上一节中,您已经熟悉了如何构建、运行、部署和调用链代码,但尚未编写任何 Java 代码。 在本节中,将会使用 Eclipse IDE、一个用于 Eclipse 的 Gradle 插件,...

笔阁 ⋅ 05/24 ⋅ 0

Hyperledger Fabric 1.0 从零开始(七)——启动Fabric多节点集群

5:启动Fabric多节点集群 5.1、启动orderer节点服务 上述操作完成后,此时各节点的compose配置文件及证书验证目录都已经准备完成,可以开始尝试启动多机Fabric集群。 首先启动orderer节点,切...

aberic ⋅ 2017/09/18 ⋅ 0

hyperledger fabric本地开发环境mac部署

搭建方法主要参考http://hyperledger-fabric.readthedocs.io/en/latest/dev-setup/devenv/的英文文档说明,和另一篇windows下的文章(http://8btc.com/article-3815-1.html)在mac pro下进行...

黑神领主 ⋅ 2016/11/16 ⋅ 2

超级账本Fabric 1.0 多节点集群的部署(3)

题图摄于美国加州17英里:Lone Cypress ( 接上期,部署配置中大量使用了 docker 和 docker compose ,建议不熟悉的读者先补充相关知识。) 2.3 多节点 Fabric 的配置 以下各VM的工作目录为:...

q48s71bczbeylou9t0n ⋅ 2017/07/06 ⋅ 0

HyperLedger-fabric V0.6 for CentOS7.2开发环境搭建

BlockChain联盟链中的Hyperledger项目中的Fabrica项目是商业联盟应用区块链的基石之作,现在来搭建一个运行环境,进行技术验证。 安装组件如下: 1.Docker-compose:Docker 容器管理; 2.Go l...

newthink ⋅ 2017/02/17 ⋅ 0

Hyperledger Fabric周周记:Composer

在上周周记的结尾,我曾经说过本周要介绍Fabric的开发和应用。按照最开始的写作计划,我打算讲讲两种开发模式:直接使用Fabric API和利用Composer框架。可在通读完Composer的文档之后,我立即...

胡键 ⋅ 05/21 ⋅ 0

5分钟创建并玩转属于自己的区块链(图文攻略)

前言: 区块链今年发展真是飞快!从最初一个陌生的概念,到如今已经在各个行业起步,星星之火大有燎原之势。真希望能拥有自己的区块链练练手【表情】!可是一个人、一台电脑,怎么才能搭起来...

lindylin ⋅ 2016/07/16 ⋅ 1

5分钟创建并玩转属于自己的区块链

区块链今年发展真是飞快!从最初一个陌生的概念,到如今已经在各个行业起步,星星之火大有燎原之势。真希望能拥有自己的区块链练练手!可是一个人、一台电脑,怎么才能搭起来区块链环境……火...

雪花又一年 ⋅ 04/13 ⋅ 0

从零开始,5分钟创建并玩转属于自己的区块链-图文攻略

前言 区块链今年发展真是飞快!从最初一个陌生的概念,到如今已经在各个行业起步,星星之火大有燎原之势。真希望能拥有自己的区块链练练手O(∩_∩)O~!可是一个人、一台电脑,怎么才能搭起来...

雪花又一年 ⋅ 04/16 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

SpringBoot集成Druid的最简单的小示例

参考网页 https://blog.csdn.net/king_is_everyone/article/details/53098350 建立maven工程 Pom文件 <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM......

karma123 ⋅ 今天 ⋅ 0

Java虚拟机基本结构的简单记忆

Java堆:一般是放置实例化的对象的地方,堆分新生代和老年代空间,不断未被回收的对象越老,被放入老年代空间。分配最大堆空间:-Xmx 分配初始堆空间:-Xms,分配新生代空间:-Xmn,新生代的大小一...

算法之名 ⋅ 今天 ⋅ 0

OSChina 周日乱弹 —— 这么好的姑娘都不要了啊

Osc乱弹歌单(2018)请戳(这里) 【今日歌曲】 @TigaPile :分享曾惜的单曲《讲真的》 《讲真的》- 曾惜 手机党少年们想听歌,请使劲儿戳(这里) @首席搬砖工程师 :怎样约女孩子出来吃饭,...

小小编辑 ⋅ 今天 ⋅ 8

Jenkins实践3 之脚本

#!/bin/sh# export PROJ_PATH=项目路径# export TOMCAT_PATH=tomcat路径killTomcat(){pid=`ps -ef | grep tomcat | grep java|awk '{print $2}'`echo "tom...

晨猫 ⋅ 今天 ⋅ 0

Spring Bean的生命周期

前言 Spring Bean 的生命周期在整个 Spring 中占有很重要的位置,掌握这些可以加深对 Spring 的理解。 首先看下生命周期图: 再谈生命周期之前有一点需要先明确: Spring 只帮我们管理单例模...

素雷 ⋅ 今天 ⋅ 0

zblog2.3版本的asp系统是否可以超越卢松松博客的流量[图]

最近访问zblog官网,发现zlbog-asp2.3版本已经进入测试阶段了,虽然正式版还没有发布,想必也不久了。那么作为aps纵横江湖十多年的今天,blog2.2版本应该已经成熟了,为什么还要发布这个2.3...

原创小博客 ⋅ 今天 ⋅ 0

聊聊spring cloud的HystrixCircuitBreakerConfiguration

序 本文主要研究一下spring cloud的HystrixCircuitBreakerConfiguration HystrixCircuitBreakerConfiguration spring-cloud-netflix-core-2.0.0.RELEASE-sources.jar!/org/springframework/......

go4it ⋅ 今天 ⋅ 0

二分查找

二分查找,也称折半查找、二分搜索,是一种在有序数组中查找某一特定元素的搜索算法。搜素过程从数组的中间元素开始,如果中间元素正好是要查找的元素,则搜素过程结束;如果某一特定元素大于...

人觉非常君 ⋅ 今天 ⋅ 0

VS中使用X64汇编

需要注意的是,在X86项目中,可以使用__asm{}来嵌入汇编代码,但是在X64项目中,再也不能使用__asm{}来编写嵌入式汇编程序了,必须使用专门的.asm汇编文件来编写相应的汇编代码,然后在其它地...

simpower ⋅ 今天 ⋅ 0

ThreadPoolExecutor

ThreadPoolExecutor public ThreadPoolExecutor(int corePoolSize, int maximumPoolSize, long keepAliveTime, ......

4rnold ⋅ 昨天 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部