Fabric
Fabric交流社区
https://wiki.hyperledger.org/
官网文档
https://hyperledger-fabric.readthedocs.io/zh_CN/release-2.2/whatis.html#hyperledger-fabric
搭建测试环境
系统:ubuntu20
更新
sudo apt update
sudo apt upgrade --fix-missing
安装git
sudo apt install git
安装curl
sudo apt install curl
安装Docker
sudo apt install docker.io
安装docker-compose工具
sudo apt install docker-compose
下载Golang,安装到指定文件目录https://golang.org/dl/
sudo tar -zxvf go1.15.4.linux-amd64.tar.gz -C /usr/local/
到go安装路径
/usr/local/go/bin
使用sudo vi /etc/sudoers
Defaults secure_path="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/snap/bin:/usr/local/go/bin"
配置环境变量
新建
mkdir go
sudo vim /etc/profile
添加
export GOPATH= H O M E / g o e x p o r t G O R O O T = / u s r / l o c a l / g o e x p o r t P A T H = HOME/go export GOROOT=/usr/local/go export PATH= HOME/goexportGOROOT=/usr/local/goexportPATH=GOROOT/bin:$PATH
使配置信息生效
source /etc/profile
重启,验证
go version
下载Fabric源码
git clone https://github.com/hyperledger/fabric.git
新建
mkdir hyfa
cd fabric/scripts/
cp bootstrap.sh /$HOME/hyfa/
加可执行权限
chmod +x bootstrap.sh
安装 fabric-samples 1.2.0版本
sudo ./bootstrap.sh 1.2.0
将你的用户添加到 docker 组
sudo usermod -a -G docker gll
添加docker用户gll(用户名)
添加环境变量
export PATH=$HOME/hyfa/fabric-samples/bin:$PATH
进入/hyfa/fabric-samples/first-network目录
执行
./byfn.sh --help
up:启动;
down:清除网络;
restart:重新启动;
generate:生成证书及创世区块;
upgrade:将网络从1.1.x升级到1.2.x;
-c:用于指定channelName,默认值"mychannel";
-t:CLI timeout时间,默认值10;-d:延迟启动,默认值3;
-f:使用指定的网络拓扑结构文件,默认使用docker-compose-cli.yaml;
-s:指定使用的数据库,可选 goleveldb/couchdb;
-l:指定chaincode使用的语言,可选golang/node;
-i:指定镜像tag,默认 “latest”。
补充
如果遇到一些错误,可以尝试以下:
进入fabcar目录,执行完成fabcar的全部初始化
./startFabric.sh
之后进入到/fabric-samples/test-network目录
export PATH=${PWD}/../bin:$PATH
export FABRIC_CFG_PATH=$PWD/../config/
export CORE_PEER_TLS_ENABLED=true
export CORE_PEER_LOCALMSPID="Org1MSP"
export CORE_PEER_TLS_ROOTCERT_FILE=${PWD}/organizations/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/ca.crt
export CORE_PEER_MSPCONFIGPATH=${PWD}/organizations/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp
export CORE_PEER_ADDRESS=localhost:7051
执行
peer chaincode query -C mychannel -n fabcar -c '{"Args":["queryAllCars"]}'
或者
peer chaincode query -C mychannel -n fabcar -c '{"Args":["queryCar","CAR1"]}'
关于执行./network.sh deployCC
到go安装路径
/usr/local/go/bin
使用sudo vi /etc/sudoers
Defaults secure_path="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/snap/bin:/usr/local/go/bin"
go env -w GO111MODULE=on
go env -w GOPROXY=https://goproxy.cn,direct
来源:oschina
链接:https://my.oschina.net/u/4355012/blog/4711171