Hyperledger Fabric 常用命令
Peer常用命令:
#peer chaincode --help
#peer channel list --help
--logging-level <string>
#<string>:debug,info,notice,warning,error,critical
--version
peer命令包含五个不同的自命令:
peer chaincode [option] [flags]
peer chaincode install [flags]
将指定的链代码打包到部署规范中,并将其保存到peer路径中。参数:
-c:JSON字串的链代码构造函数消息(默认”{}”)
-h:帮助
-l:编写chaincode的语言,默认”golang”
-n:chaincode名
-p:chaincode路径
-v:chaincode版本
-o:orderer节点
peer chaincode instantiate [flags]
-C:channel ID string
-c:JSON字串的链代码构造函数消息(默认”{}”)
-h:帮助
-l:编写chaincode的语言,默认”golang”
-n:chaincode名
-E: The name of the endorsement system chaincode to be used for this chaincode
-P:与此代码相关的认可政策
-o:orderer节点
实例
export ORDERER_CA=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/ordererOrganizations/example.com/orderers/orderer.example.com/msp/tlscacerts/tlsca.example.com-cert.pem
peer chaincode instantiate -o orderer.example.com:7050 --tls --cafile $ORDERER_CA -C mychannel -n mycc -v 1.0 -c '{"Args":["init","a","100","b","200"]}' -P "AND ('Org1MSP.peer','Org2MSP.peer')"
peer chaincode invoke
调用指定的链代码,它将尝试提交指定的事务到网络中
-C:channel ID string
-c:JSON字串的链代码构造函数消息(默认”{}”)
-h:help
-n:chaincode名字
-o:orderer节点
实例
peer chaincode invoke -o orderer.example.com: -C mychannel -n mycc --peerAddresses peer0.org1.example.com: --peerAddresses peer0.org2.example.com: -c '{"Args":["invoke","a","b","10"]}'
peer chaincode list
如果指定通道,则在通道中获取实例化的链代码,或在peer节点上获取已安装的链代码
-C:
-h:
-o:
peer chaincode package
将指定的链代码打包到部署规范中
-s:create CC deployment spec for owner endorsements instead of raw CC deployment spec
-c:JSON字串的链代码构造函数消息(默认”{}”)
-h:help
-n:chaincode名字
-o:orderer节点
-i:为chaincode初始化协议
-l:chaincode编写语言,默认”golang”
-p:chaincode路径
peer chaincode query
Get endorsed result of chaincode function call and print it. It won’t generate transaction.
-C:channelID string
-c:JSON字串的链代码构造函数消息(默认”{}”)
-h:help
-n:chaincode名字
-r:如果为true,则将查询值输出为原始字节,否则格式化为可打印字符串
实例:
peer chaincode query -C mychannel -n mycc -c '{"Args":["query","a"]}'
peer chaincode signpackage
Sign the specified chaincode package
-h
-o
peer chaincode upgrade
使用指定得chaincode替换现有得chaincode,新的chaincode将在提交事务时立即替换现有的chaincode
实例
export ORDERER_CA=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/ordererOrganizations/example.com/orderers/orderer.example.com/msp/tlscacerts/tlsca.example.com-cert.pem
peer chaincode upgrade -o orderer.example.com: --tls --cafile $ORDERER_CA -C mychannel -n mycc -v 1.2 -c '{"Args":["init","a","100","b","200","c","300"]}' -P "AND ('Org1MSP.peer','Org2MSP.peer')"
peer channel [command]
peer channel create
创建一个通道,并将创世块写入文件
-c:channelID string
-f:事务文件的配置信息
-o,–orderer:orderer节点
例子:
peer channel create -c mychannel -f ./createchannel.txn --orderer orderer.example.com:
或者
peer channel create -c mychannel --orderer orderer.example.com: -f ./createchannel.txn -t 30s
peer channel fetch
获取指定得块,将其写入文件
例子
peer channel fetch newest mychannel.block -c mychannel --orderer orderer.example.com:
peer channel getinfo
获取指定频道得区块链信息,需要’-c’
例子:
peer channel getinfo -c mychannel
peer channel join
将peer节点加入通道中
例子
peer channel join -b ./mychannel.genesis.block
peer channel list
加入通道的节点列表
peer channel list
peer channel signconfigtx
在文件系统上签署配置的更新文件,需要’-f’
peer channel update
签署并将提供的配置文件更新发送到通道中,需要’-f’,’-o’,’-c’
例子:
peer channel update -c mychannel -f ./updatechannel.txn -o orderer.example.com:
peer logging [option] [flags]
允许用户动态观察和配置peer的日志级别
peer logging getlevel
返回peer节点的日志级别
peer logging getlevel peer
peer logging revertlevels
将日志记录级别还原为对等启动结束时的级别
peer logging revertlevels
peer logging setlevel
设置正则表达式匹配的所有模块的日志记录级别
peer logging setlevel peer warning
peer node [option] [flags]
该命令用于启动一个peer node节点或者改变peer node节点的状态
peer node start
启动与网络交互的节点
例子:
peer node start --peer-chaincodedev
peer node status
返回正在运行的node节点的状态
peer version [option] [flags]
该命令用于显示peer的版本号和版本信息等
configtxgen
该命令用来为用户创建与检查配置相关的工作
输出一个创世块
configtxgen -outputBlock genesis_block.pb -profile SampleSingleMSPSoloV1_1 -channelID orderer-system-channel
输出一个创建通道的tx
configtxgen -outputCreateChannelTx create_chan_tx.pb -profile SampleSingleMSPChannelV1_1 -channelID application-channel-
检查一个起源块
configtxgen -inspectBlock genesis_block.pb
检查频道创建tx
configtxgen -inspectChannelCreateTx create_chan_tx.pb
打印一个组织定义
configtxgen -printOrg Org1
输出anchor peer tx
configtxgen -outputAnchorPeersUpdate anchor_peer_tx.pb -profile SampleSingleMSPChannelV1_1 -asOrg Org1
configtxlator
允许用户在protobuf和JSON版本的数据结构之间进行转换并创建配置更新,该命令也可以启动REST服务器,通过HTTP公开其功能
start
Start the configtxlator REST server
configtxlator start [<flags>] # --help
# --hostname="0.0.0.0"
# --port=
proto_encode
Converts a JSON document to protobuf
configtxlator proto_encode --type=TYPE [<flags>]
# --help
# --type=TYPE
# --input=/dev/stdin
# --output=/dev/stdout
proto_decode
Converts a proto message to JSON
configtxlator proto_decode --type=TYPE [<flags>]
# --help
# --type=TYPE
# --input=/dev/stdin
# --output=/dev/stdout
compute_update
采用两个封送的common.Config消息并计算在两者之间转换的配置更新
configtxlator compute_update --channel_id=CHANNEL_ID [<flags>]
# --help
# --original=ORIGINAL
# --updated=UPDATED
# --channel_id=CHANNEL_ID
# --output=/dev/stdout
Hyperledger Fabric 常用命令的更多相关文章
- hyperledger fabric 架设命令
单节点架设 Order 网络: cd ~/go/src/github.com/hyperledger/fabric/examples/e2e_cli/ rm -rf channel-artifacts ...
- Hyperledger Fabric CA的命令行用法
介绍Hyperledger Fabric CA的命令行方式简单用法 Hyperledger Fabric CA由server和client两部分组成. 设置两个环境变量 export FABRIC_C ...
- Hyperledger Fabric 命令整理
Peer节点命令 Peer node start 启动一个Peer节点: peer node start status 获取当前节点的状态信息 peer node status reset 重置当前节 ...
- Hyperledger Fabric 1.0 从零开始(二)——环境构建(公网)
1:环境构建 在本文中用到的宿主机环境是Centos ,版本为Centos.x86_647.2,通过Docker 容器来运行Fabric的节点,版本为v1.0.因此,启动Fabric网络中的节点需要先 ...
- 在Ubuntu中部署并测试HyperLedger Fabric 0.6
最近开始研究区块链,对这个新兴的技术有了基本概念上的了解,所以打算基于一个开源项目做做实验.如果是做数字货币,那么比特币的源代码是最好的了,不过这算是区块链1.0吧,已经有很多改进的竞争币和山寨币出来 ...
- Ubuntu下搭建Hyperledger Fabric v1.0环境
多次尝试才正常启动了Fabric,如遇到各种莫名错误,请参考如下一步步严格安装,特别用户权限需要注意. 一.安装Ubuntu16 虚拟机或双系统,虚拟机有VirtualBox或者VMware,Ub ...
- (一)Hyperledger Fabric 1.1安装部署-基础环境搭建
在学习和开发hyperledger fabric的时候遇到了一些坑,现将自己的一些总结和心得整理如下,以期对大家有所帮助.本次使用的宿主机环境:ubuntu,版本:Ubuntu 16.04.3 LTS ...
- hyperledger fabric学习(1)
第一部分 环境搭建 说明 本次环境搭建是是现在虚拟机中,采用ubuntu 16.04版本,安装多次成功. 首先安装一些常用的工具 sudo apt-get update sudo apt-get in ...
- Hyperledger Fabric(1)基础架构
前言 在区块链的家谱里,第一代区块链系统是以比特币为代表的公链,主要实现的是数字货币的功能:第二代区块链系统是以以太坊平台为代表的公链,创造性的实现了智能合约.而第三代区块链系统,则是HyperLed ...
随机推荐
- 2018HDU多校联赛第六场 6373 Pinball——水题&&物理题
题意 给定一个斜面,从某处让一个小球作自由落体运动,求小球与斜面的碰撞次数(假设都为弹性碰撞). 分析 题图如下,x轴.y轴是虚拟的. 根据高中物理的套路,沿斜面方向分解重力加速度即可. #inclu ...
- GET 和 POST is so different
.原理区别 一般我们在浏览器输入一个网址访问网站都是GET请求;再FORM表单中,可以通过设置Method指定提交方式为GET或者POST提交方式,默认为GET提交方式. HTTP定义了与服务器交互的 ...
- HDU 6143 - Killer Names | 2017 Multi-University Training Contest 8
/* HDU 6143 - Killer Names [ DP ] | 2017 Multi-University Training Contest 8 题意: m个字母组成两个长为n的序列,两序列中 ...
- 将vim打造成python开发工具
1.创建vim插件工作目录 [root@ray ~]# mkdir -p ~/.vim/bundle 2.下载插件 [root@ray ~]# cd ~/.vim/bundle [root@ray b ...
- AtomicInteger如何保证线程安全以及乐观锁/悲观锁的概念
众所周知,JDK提供了AtomicInteger保证对数字的操作是线程安全的,线程安全我首先想到了synchronized和Lock,但是这种方式又有一个名字,叫做互斥锁,一次只能有一个持有锁的线程进 ...
- nodejs基础 用http模块 搭建一个简单的web服务器 响应JSON、html
前端在开发中,大多会想浏览器获取json数据,下面来用nodejs中的http模块搭建一个返回json数据的服务器 var http = require("http"); var ...
- mysql建表问题
PUBLIC Stack Overflow Tags Users Jobs TeamsQ&A for workLearn More MySQL error: The maximum col ...
- bash基础之三配置文件
一.shell的两种登录方式: 1.交互式登录:(1)直接通过终端输入账号密码登录(2)使用“su - UserName” 或“su -l Username”切换的用户执行顺序:/etc/profil ...
- 重读APUE(14)-主线程终止对子线程的影响
在main中创建线程,我们称main线程为主线程,新建线程为子线程(其实没有什么主线程和子线程的父子概念,它们是平行的,为了好理解这样称呼),如果子线程内部执行相对比较耗时的操作,主线程执行的快,而且 ...
- [go]gin框架
gin参考 Gin框架返回值 // 返回json func main() { r := gin.Default() //方法一: 自己拼接json // gin.H is a shortcut for ...