hyperledger 儿童车级开发项目实战----投票系统(1)
今天根据hyperledger 企业级开发项目实战视频,自己做了一个投票demo。在这做个记录
首先编写智能合约
在$GOPATH
的的src
路径下创建项目的名称,我的是mkdir vote
然后创建chaincode
文件夹,主要放智能合约的代码
进入chaincode
后,创建votecc
的二级目录,忘了为啥要这么做了
进入votecc
目录,输入npm init
先初始化环境
然后输入 npm install --save fabric-shim
安装fabric相关的依赖库
可能会报如上的警告,不过问题应该不大的,继续往下走。
接下来,编辑chaincode
的核心代码, 输入 vi vote.js
,进入编辑模型开始输入你的核心代码,视频里有模板,讲解的还不错
然后是配置网络,搭建环境
cd到src下vote文件中
然后创建network文件夹,
mkdir votenetwork
cd votenetwork/
mkdir basic-network
cd basic-network/
关于basic-network
文件里的配置文件,你看完上面那个视频之后会发现,其实所有配置文件直接从fabric-simple
中拷贝过来就可以了
有了crypto-config.yaml
文件后需要编译一下,通过如下进行配置,
cryptogen generate --config ./crypto-config.yaml
如果提醒没有cryptogen命令,可以修改一下环境变量,加一个东西,这在上面这个视频的第9节的8分26秒左右有说明
参照他的说明应该可以解决
使用tree命令查看4级目录
没有tree命令的话,可以通过apt-get install tree
进行安装
然后进行创始区块创建
首先要创建mkdir channel-artifacts
文件夹
configtxgen -profile OneOrgOrdererGenesis -outputBlock ./channel-artifacts/genesis.block
configtxgen -profile TwoOrgsChannel -outputCreateChannelTx ./channel-artifacts/channel.tx -channelID mychannel
然后编写docker-compose.yaml文件
最新文章
- 把w3schools英文版的所有属性扒下来了,免费分享。
- Java设计模式之建造者模式(Builder)
- imadjust从用法到原理—Matlab灰度变换函数之一
- MFC 自绘按钮 消息响应
- jQuery 简介和安装
- CMPP3.0 长短信实现方案
- java Annotation Demo
- php unserialize 返回false的解决方法
- static \ const \ volatile 的含义
- Google C++ style guide——命名约定
- 无比奇怪的问题,Runtime报错,程序仍可运行(有可能是线程崩溃,但主程序不崩溃,线程崩溃可能是因为锁使用不当引起的)
- SQLHelper帮助类_下(支持多数据库的封装)
- js url参数解析获取
- c/c++ 线性表之双向循环链表
- easyui 进阶之表单校验、自定义校验
- 键盘监听事件KeyListener
- PE Header and Export Table for Delphi
- dynamics 365 AI 解决方案 —— 介绍
- LOJ2476. 「2018 集训队互测 Day 3」蒜头的奖杯 &; LOJ2565. 「SDOI2018」旧试题(莫比乌斯反演)
- 关于Linq中First、FirstOrDefault;Single、SingleOrDefault等方法的说明