对于专注于业务功能开发的小伙伴们如果不想在搭环境上浪费太多时间,以下搭建手册可以做到一键启动,毕竟和开发者模式还是有些区别的。如果想深入了解fabric的话,建议还是从自己手动搭建开始,可以学到更多。
0. 准备工作,需要提前安装docker, docker-compose,安装方法请自行百度
- clone文件
git clone https://github.com/hsxy0820/fabric-test.git
2. 如果想以哪种共识启动,就切换到哪一个目录下,这里选择solo
cd fabric-test/solo
3.创建网桥
docker network create fabric
4. docker-compose启动
docker-compose -f solo.yaml up -d
5. 启动cli,进行创建channel, 部署chaincode, 调用chaincode等操作(详细命令参考cmd.txt)
docker exec -it cli bash #进入容器
#创建通道
CORE_PEER_LOCALMSPID="Org1MSP" CORE_PEER_MSPCONFIGPATH=/admin/msp/org1Admin CORE_PEER_ADDRESS=org1.peer1:7051 peer channel create -o orderer:7050 -c mychannel -f /admin/data/channel.tx
#org1.peer1加入通道(其他节点类似)
CORE_PEER_LOCALMSPID="Org1MSP" CORE_PEER_MSPCONFIGPATH=/admin/msp/org1Admin CORE_PEER_ADDRESS=org1.peer1:7051 peer channel join -b ./mychannel.block
#安装chaincode(以example2为例,其他节点类似)
CORE_PEER_LOCALMSPID="Org1MSP" CORE_PEER_MSPCONFIGPATH=/admin/msp/org1Admin CORE_PEER_ADDRESS=org1.peer1:7051 peer chaincode install -n mycc -v 1.0 -p github.com/hyperledger/fabric/examples/chaincode/go/example02/cmd
#实例化chaincode(和安装不同,每个节点都需要安装,但只需在channel里的一个节点做实例化即可)
CORE_PEER_LOCALMSPID="Org1MSP" CORE_PEER_MSPCONFIGPATH=/admin/msp/org1Admin CORE_PEER_ADDRESS=org1.peer1:7051 peer chaincode instantiate -o orderer:7050 -C mychannel -n mycc -v 1.0 -c '{"Args":["init","a","1000","b","2000"]}' -P "OR ('Org1MSP.member','Org2MSP.member')"
#chaincode的query和invoke操作
CORE_PEER_LOCALMSPID="Org1MSP" CORE_PEER_MSPCONFIGPATH=/admin/msp/org1Admin CORE_PEER_ADDRESS=org1.peer1:7051 peer chaincode query -C mychannel -n mycc -c '{"Args":["query","a"]}'
CORE_PEER_LOCALMSPID="Org1MSP" CORE_PEER_MSPCONFIGPATH=/admin/msp/org1Admin CORE_PEER_ADDRESS=org1.peer1:7051 peer chaincode invoke -o orderer:7050 -C mychannel -n mycc --peerAddresses org1.peer1:7051 -c '{"Args":["invoke","a","b","10"]}'
6. 停止和初始化操作
docker-compose -f solo.yaml down
sudo ./reset.sh #(初始化过程中有些目录没有删除权限,故使用sudo操作)