花了快两天才搭好第一个区块链网络,踩过很多坑,有慢慢找到解决办法的,也有推到重来的。现在进入正题。
1 安装过程
1.1 安装brew
Linux不同版本的系统中有很多在线安装工具,如yum,apt-get。brew是mac中很实用的工具。
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
1.2 安装组件
brew install gnu-tar --with-default-names
brew install libtool
1.3 安装 go
brew install go
1.4 安装 docker-compose
brew install docker-compose
1.5 安装docker
百度下载docker对应的安装包即可。版本尽量高。
1.6 安装git
参照git 安装教程
1.7 fabric 搭建
1.7.1 创建工作环境
本人是在~目录下创建go/src/github.com/hyperledger工作环境。
cd go/src/github.com/hyperledger
1.7.2 下载fabric源码并切换分支
git clone https://github.com/hyperledger/fabric.git
git checkout v1.0.0-beta
切换分支非常重要。
1.7.3 编译源码
cd fabric
make configtxgen
如果编译成功
build/bin/configtxgen
CGO_CFLAGS=" " GOBIN=/Users/johndoe/work/src/github.com/hyperledger/fabric/build/bin go install -ldflags "-X github.com/hyperledger/fabric/common/metadata.Version=1.0.0-snapshot-8d3275f -X github.com/hyperledger/fabric/common /metadata.BaseVersion=0.3.0 -X github.com/hyperledger/fabric/common/metadata.BaseDockerLabel=org.hyperledger.fabric" github.com/hyperledger/fabric/common/configtx/tool/configtxgen
Binary available as build/bin/configtxgen``
1.7.4 Base目录下的网络名称
cd fabric/examples/e2e_cli/base
vim peer-base.yaml
将网络名改成如下名称即可- CORE_VM_DOCKER_HOSTCONFIG_NETWORKMODE=e2e_cli_default
1.7.5 下载镜像
cd fabric/examples/e2e_cli
chmod +x download-dockerimages.sh
bash download-dockerimages.sh -c x86_64-1.0.0-beta -f x86_64-1.0.0-beta
官网给出的是./download-dockerimages.sh 下载镜像,但是在自由上网的前提下,这一步任然多次执行失败。
镜像下载成功后执行
docker images
1.7.5 启动网络
cd fabric/examples/e2e_cli
bash network_setup.sh up
网络启动成功后提示
2.fabric 版本问题
fabric 版本一定要统一,不然就会出现下面问题。
Attempting to Query PEER0 ...3 secs
Attempting to Query PEER0 ...6 secs
Attempting to Query PEER0 ...9 secs
Attempting to Query PEER0 ...12 secs
Attempting to Query PEER0 ...15 secs
Attempting to Query PEER0 ...18 secs
Attempting to Query PEER0 ...21 secs
Attempting to Query PEER0 ...24 secs
Attempting to Query PEER0 ...27 secs
Attempting to Query PEER0 ...30 secs
Attempting to Query PEER0 ...33 secs
Attempting to Query PEER0 ...37 secs
Attempting to Query PEER0 ...40 secs
Attempting to Query PEER0 ...43 secs
Attempting to Query PEER0 ...46 secs
Attempting to Query PEER0 ...49 secs
Attempting to Query PEER0 ...52 secs
Attempting to Query PEER0 ...55 secs
镜像下载
官网教程镜像教程在我实践过程中出现了问题,后来在网上采用的1.7.5步骤很好的解决了问题。
参考:https://blog.csdn.net/vivian_ll/article/details/79966210
全文参考
官方文档:https://hyperledgercn.github.io/hyperledgerDocs/getting_started/#_8
mac fabric 搭建:https://my.oschina.net/mdxlcj/blog/1836612