建立第一個fabric網路,合約部署
以下文章中以$ 開頭的皆是終端命令。以下終端命令不報錯,出現ERROR就繼續。
$ cd cd first-network
1、關閉相關網路服務
$ ./byfn.sh -m down ,輸入y繼續。不用關Waring.
2、利用 cryptogen tool,configtxgen tool等工具生成證書,排序器,更新錨節點等
$ ./byfn.sh -m generate
3、生成排序器創世區塊
$ ../bin/cryptogen generate --config=./crypto-config.yaml
$ export FABRIC_CFG_PATH=$PWD
$ ../bin/configtxgen -profile TwoOrgsOrdererGenesis -channelID byfn-sys-channel -outputBlock ./channel-artifacts/genesis.block
4、生成應用通道的配置資訊
$ export CHANNEL_NAME=mychannel
$ ../bin/configtxgen -profile TwoOrgsChannel -outputCreateChannelTx ./channel-artifacts/channel.tx -channelID $CHANNEL_NAME
5、生成錨節點配置更新檔案
$ ../bin/configtxgen -profile TwoOrgsChannel -outputAnchorPeersUpdate ./channel-artifacts/Org1MSPanchors.tx -channelID $CHANNEL_NAME -asOrg Org1MSP
$ ../bin/configtxgen -profile TwoOrgsChannel -outputAnchorPeersUpdate ./channel-artifacts/Org2MSPanchors.tx -channelID $CHANNEL_NAME -asOrg Org2MSP
6、開啟網路
$ CHANNEL_NAME=$CHANNEL_NAME TIMEOUT=600 docker-compose -f docker-compose-cli.yaml up -d
7、建立及加入通道
a、進入docker容器
$ docker exec -it cli bash
b、建立通道, ///出錯了 Error connecting due to rpc error: code = Unavailable desc = grpc: the connection is unavailable
$ export CHANNEL_NAME=mychannel //生成變數
$ peer channel create -o orderer.example.com:7050 -c $CHANNEL_NAME -f ./channel-artifacts/channel.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
///出錯了 Error connecting due to rpc error: code = Unavailable desc = grpc: the connection is unavailable
以下是網路元件更新文件
$ git fetch origin
$ git checkout v1.x.x
$ ./byfn.sh generate
$ ./byfn.sh up -t 3000 -i 1.x.x