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:7050 -C mychannel -n mycc --peerAddresses peer0.org1.example.com:7051 --peerAddresses peer0.org2.example.com:7051 -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:7050 --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:7050 或者 peer channel create -c mychannel --orderer orderer.example.com:7050 -f ./createchannel.txn -t 30s
peer channel fetch
获取指定得块,将其写入文件
例子
peer channel fetch newest mychannel.block -c mychannel --orderer orderer.example.com:7050
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:7050
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-1
检查一个起源块
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=7059
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
原文地址:https://www.cnblogs.com/zhanghh/p/12059689.html
- 分区表的一个持续改进方案(r9笔记第53天)
- python jieba分词(结巴分词)、提取词,加载词,修改词频,定义词库
- MySQL中的NULL和空串比较 (r9笔记第52天)
- Core-periphery decomposition--核心-外围模型R代码整理
- 停止数据库没有响应的问题分析(r9笔记第51天)
- Hive——巧用transform处理复杂的字符串问题
- 停止数据库没有响应的问题分析(r9笔记第50天)
- 一个SQL语句引发的ORA-00600错误排查(一) (r9笔记第64天)
- 一个SQL语句引发的ORA-00600错误排查(二)(r9笔记第65天)
- 关于all_procedures的问题分析 (r9笔记第61天)
- 半自动化搭建Data Guard的想法和实践(一) (r9笔记第74天)
- Go语言位操作实例
- 通过Snapshot Standby来精确评估SQL性能 (r9笔记第73天)
- mongodb11天之屠龙宝刀(三)基本操作:增删改查与mysql对比
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- 使用ITK-SNAP进行抠图操作并保存mask的实例
- Yii2框架加载css和js文件的方法分析
- php 与 nginx 的处理方式及nginx与php-fpm通信的两种方式
- python如何求圆的面积
- php实现微信公众号企业转账功能
- PHP通过调用新浪API生成t.cn格式短网址链接的方法详解
- Python之Matplotlib文字与注释的使用方法
- Python实现图片查找轮廓、多边形拟合、最小外接矩形代码
- python中return如何写
- PHP钩子实现方法解析
- 浅谈numpy中函数resize与reshape,ravel与flatten的区别
- PHP文件类型检查及fileinfo模块安装使用详解
- PHP封装的分页类与简单用法示例
- ThinkPHP3.2框架自带分页功能实现方法示例
- PHP获取访问设备信息的方法示例