安裝docker
yum -y install docker
docker version
啟用docker官方中國(guó)區(qū)加速器:
vim /etc/sysconfig/docker
--registry-mirror=https://registry.docker-cn.com
service docker start
安裝docker-compose
yum -y install epel-release
yum -y install python-pip
pip install --upgrade pip
pip install docker-compose
安裝go
wget https://storage.googleapis.com/golang/go1.8.3.linux-amd64.tar.gz
tar -xvf go1.8.3.linux-amd64.tar.gz
mv go /usr/local/
mkdir -p /root/golang
vim /etc/profile
export GOPATH=/root/golang
export PATH=$PATH:/usr/local/go/bin:$GOPATH/bin
source /etc/profile
ln -s $GOPATH /opt/gopath
安裝git
yum -y install git
Fabric源碼下載
git clone https://github.com/hyperledger/fabric $GOPATH/src/github.com/hyperledger/fabric
git clone https://github.com/hyperledger/fabric-ca $GOPATH/src/github.com/hyperledger/fabric-ca
或
go get github.com/hyperledger/fabric
go get github.com/hyperledger/fabric-ca
Fabric Docker鏡像下載
cd $GOPATH/src/github.com/hyperledger/fabric/examples/e2e_cli/
source download-dockerimages.sh -c x86_64-1.0.0 -f x86_64-1.0.0
啟動(dòng)Fabric網(wǎng)絡(luò)并完成ChainCode測(cè)試
cd $GOPATH/src/github.com/hyperledger/fabric/examples/e2e_cli/
./network_setup.sh up
1編譯生成Fabric公私鑰王凑、證書(shū)的程序,程序在目錄:fabric/release/linux-amd64/bin
2基于configtx.yaml生成創(chuàng)世區(qū)塊和通道相關(guān)信息儿捧,并保存在channel-artifacts文件夾。
3基于crypto-config.yaml生成公私鑰和證書(shū)信息暖混,并保存在crypto-config文件夾中禾唁。
4基于docker-compose-cli.yaml啟動(dòng)1Orderer+4Peer+1CLI的Fabric容器弹砚。
5在CLI啟動(dòng)的時(shí)候,會(huì)運(yùn)行scripts/script.sh文件向图,這個(gè)腳本文件包含了創(chuàng)建Channel泳秀,加入Channel,安裝Example02榄攀,運(yùn)行Example02等功能嗜傅。
手動(dòng)測(cè)試一下Fabric網(wǎng)絡(luò)
docker exec -it cli bash
以下命令可以查詢a賬戶的余額
peer chaincode query -C mychannel -n mycc -c '{"Args":["query","a"]}'
把a(bǔ)賬戶的余額再轉(zhuǎn)20元給b賬戶
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 mycc -c '{"Args":["invoke","a","b","20"]}'
查詢a賬戶的余額
peer chaincode query -C mychannel -n mycc -c '{"Args":["query","a"]}'
關(guān)閉Fabric網(wǎng)絡(luò)
cd $GOPATH/src/github.com/hyperledger/fabric/examples/e2e_cli/
./network_setup.sh down
參考文檔
快速搭建一個(gè)Fabric 1.0的環(huán)境
http://www.cnblogs.com/studyzy/p/7437157.html