欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

[区块链]搭建Fabric常用命令

程序员文章站 2022-05-13 19:55:35
...

常用命令:

进入docker

docker exec -it cli bash

获取某一channel区块信息:

peer channel getinfo -c mychannel(区块的最新高度,hash值)

获取最新的区块

peer channel fetch newest -c mychannel channel-artifacts/new.pb --orderer orderer.example.com:7050 

获取最新的channel配置区块

peer channel fetch config -c mychannel channel-artifacts/config.pb --orderer orderer.example.com:7050

peer加入channel

peer channel join -b ./mychannel.genesis.block

查看peer已经加入的channel

peer channel list

将pb区块转换为json

configtxlator proto_decode --input ./channel-artifacts/new.pb --type common.Block | jq . > ./channel-artifacts/new.json (将生成的区块转换成json格式)

创建channel

configtxgen -profile TwoOrgsChannel -outputCreateChannelTx channel-artifacts/test.tx -channelID test

peer channel create -o orderer.example.com:7050 -c test -f ./channel-artifacts/test.tx --tls --cafile /opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/ordererOrganizations/example.com/orderers/orderer.example.com/msp/tlscacerts/tlsca.example.com-cert.pem

peer channel join -b test.block

peer channel list

切换peer环境变量

export CORE_PEER_LOCALMSPID="Org1MSP"
export CORE_PEER_TLS_ROOTCERT_FILE=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/tls/ca.crt
export CORE_PEER_MSPCONFIGPATH=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/peerOrganizations/org1.example.com/users/[email protected]/msp
export CORE_PEER_ADDRESS=peer1.org1.example.com:7051

安装合约

peer chaincode install -n basicinfo -v 1.0 -p github.com/chaincode/basicinfo/

peer chaincode install -n basicinfo -l go -v 5.0 -p /opt/gopath/src/github.com/chaincode/java/

实例化合约

peer chaincode instantiate -o orderer.example.com:7050 --tls --cafile /opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/ordererOrganizations/example.com/orderers/orderer.example.com/msp/tlscacerts/tlsca.example.com-cert.pem -C mychannel -n emr -v 1.0 -c '{"Args":["init"]}' -P "OR ('Org1MSP.peer')"

升级合约

peer chaincode upgrade -o orderer.example.com:7050 --tls --cafile /opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/ordererOrganizations/example.com/orderers/orderer.example.com/msp/tlscacerts/tlsca.example.com-cert.pem -C mychannel -n emr -v 2.0 -c '{"Args":["init"]}' -P "OR ('Org1MSP.peer')"

invoke合约

peer chaincode invoke -o orderer.example.com:7050 --tls true --cafile /opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/ordererOrganizations/example.com/orderers/orderer.example.com/msp/tlscacerts/tlsca.example.com-cert.pem -C mychannel -n basicinfo --peerAddresses peer0.org1.example.com:7051 --tlsRootCertFiles /opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/ca.crt -c '{"Args":["save","110115","{\"name\":\"zhangsan\",\"identity\":\"110115\",\"mobile\":\"18910012222\"}"]}'

查询合约

peer chaincode query -C mychannel -n mycc -c '{"Args":["query","a"]}'

peer chaincode query -C mychannel -n basicinfo -c '{"Args":["query","110116"]}'

查看已安装合约

peer chaincode list --installed

查看已经实例化合约

peer chaincode list --instantiated -C mychannel

查看orderer日志

docker logs -f orderer.example.com

查看peer日志

docker logs -f orderer.example.com
docker logs -f peer0.org1.example.com
docker logs -f peer0.org2.example.com
相关标签: 区块链 区块链