Fabric2.0启动网络脚本配置的示例分析
示例代码如下:
1. 配置网络拓扑
在Fabric2.0中,网络拓扑配置文件使用YAML格式进行定义。示例配置文件如下:
---
name: SampleNetwork
version: '1.0.0'
channels:
- name: mychannel
consortium: SampleConsortium
peers:
- anchorPeers:
- host: peer1.org1.example.com
port: 7051
chaincodeQuery: true
eventSource: true
- anchorPeers:
- host: peer1.org2.example.com
port: 9051
chaincodeQuery: true
eventSource: true
organizations:
- name: Org1
peers:
- peer1.org1.example.com
adminPrivateKey:
path: /path/to/private.key
signedCert:
path: /path/to/certificate.pem
- name: Org2
peers:
- peer1.org2.example.com
adminPrivateKey:
path: /path/to/private.key
signedCert:
path: /path/to/certificate.pem
orderers:
- orderer.example.com
adminIdentities:
- role: client
name: admin
affiliation: ''
enrollmentSecret: ''
2. 安装链码
安装链码可以通过命令行或SDK进行。示例代码如下:
# 在Peer1.Org1上安装链码
peer lifecycle chaincode install mychaincode.tar.gz
# 在Peer1.Org2上安装链码
peer lifecycle chaincode install mychaincode.tar.gz
# 在Peer1.Org1上将链码安装包安装到指定的链码版本中
peer lifecycle chaincode approveformyorg --channelID mychannel --name mychaincode --version 1.0 --init-required --package-id mypackageid --sequence 1 --waitForEvent
# 在Peer1.Org2上将链码安装包安装到指定的链码版本中
peer lifecycle chaincode approveformyorg --channelID mychannel --name mychaincode --version 1.0 --init-required --package-id mypackageid --sequence 1 --waitForEvent
# 在所有组织上提交链码定义
peer lifecycle chaincode commit -o orderer.example.com:7050 --channelID mychannel --name mychaincode --version 1.0 --init-required --sequence 1 --waitForEvent
3. 实例化链码
实例化链码可以通过命令行或SDK进行。示例代码如下:
# 创建链码实例并初始化
peer chaincode instantiate -o orderer.example.com:7050 --channelID mychannel --name mychaincode --version 1.0 --sequence 1 --init-required --ctor '{"Args":["init","a","100","b","200"]}' --waitForEvent
# 查询链码状态
peer chaincode query -C mychannel -n mychaincode -c '{"Args":["query","a"]}'
# 调用链码方法
peer chaincode invoke -C mychannel -n mychaincode -c '{"Args":["invoke","a","b","10"]}'
4. 关闭网络
关闭网络可以使用命令行或SDK进行。示例代码如下:
# 停止所有容器
docker stop $(docker ps -aq)
# 删除所有容器
docker rm $(docker ps -aq)
# 删除所有链码镜像
docker rmi $(docker images dev-* -q)
# 删除Fabric配置文件目录
rm -rf /tmp/fabric-client-kv-*
猜您想看
-
互联网中tcp/ip物理层的基本传输单元是什么
TCP/IP物...
2023年07月22日 -
Hadoop怎么实现伪分布模式
一、什么是伪分...
2023年05月22日 -
如何在 OpenWrt 中配置无线桥接模式?
如何在Open...
2023年04月17日 -
Java Socket客服端第二次传送信息时服务端收不到消息怎么解决
问题描述:我在...
2023年07月23日 -
Linux /etc/profile 配置文件修改的方法
1. 修改Li...
2023年05月25日 -
什么是线程池
1.什么是线程...
2023年05月26日