[Hyperledger Fabric] 1. 在CentOS 7.2 64位下 开发与运行环境搭建

一、   准备工作

版本

更新或下载URL

CentOS

7.2 64位

Hyperledger Fabric

1.0.3

依据官方提供的网址:

http://hyperledger-fabric.readthedocs.io/en/latest/samples.html

依赖项(不分先后顺序)

docker

17.05.0-ce

yes|cp -f ./docker.repo /etc/yum.repos.d/docker.repo

yum install –y docker-engine

systemctl start docker.service

 

docker.repo内容见下教程

docker-compose

1.9.0 build 2585387

pip install docker-compose

go

1.7.5

yum install –y golang

python

2.7.5

yum install –y python

python-pip

9.0.1

yum install -y python-pip

pip install --upgrade pip backports.ssl_match_hostname

git

1.8.3.1

yum install –y git

nodejs

6.11.3

yum install –y nodejs

npm

3.10.10

nodejs已集成

 

二、   搭建步骤

查看过准备工作中所需的项目后,现在可以开始搭建Hyperledger Fabric(目前最新版v1.0.3)的开发环境。

 

自动搭建环境脚本下载地址:

包含官方Sample codes、自动安装脚本、已下载好的依赖工具。

下载地址:

http://download.csdn.net/download/mimica/10048092

 

手动搭建:(必要时请切换至root用户)

1.      更新系统

 

yum update –y –skip-broken
yum upgrade –y –skip-broken

 

 

 

2.      安装前置依赖项

 

yum install -y gccopenssl-devel gcc-c++ compat-gcc-34 compat-gcc-34-c++ curl-devel expat-develgettext-devel zlib-devel perl-ExtUtils-MakeMaker

 

 

3.      安装智能合约开发环境——golang

 

yum install -y golang         
echo $GOPATH
export GOPATH=$HOME/go
exportPATH=$PATH:$GOPATH/bin

 

 

4.      安装python与python-pip

 

yum install -y pythonepel-release
python –version
yum install -y python-pip
pip install --upgrade pipbackports.ssl_match_hostname

 

 

5.      安装git,用于拉取官方Samples codes

 

yum install -y git

 

 

6.      安装运行环境

yum install -y nodejs
npm –version

 

 

7.      拉取官方docker镜像

官方拉取docker镜像脚本命令:(需通过完成)

 

curl -sSL https://goo.gl/Q3YRTi| bash

 

 

 

!!注意事项

需方可完成。失败截图如下:

        

1)      具体解决方法详见第三部分FAQ中的问题2解决方案。

2)      新增bootstrap-1.0.3.sh文件的执行权限:

 

chmod +x bootstrap-1.0.3.sh

 

 

3)      执行脚本。

[Hyperledger Fabric] 1. 在CentOS 7.2 64位下 开发与运行环境搭建_第1张图片

 

4)      等待拉取镜像完成。完成后截图如下:

[Hyperledger Fabric] 1. 在CentOS 7.2 64位下 开发与运行环境搭建_第2张图片

官方所需的依赖工具:

[Hyperledger Fabric] 1. 在CentOS 7.2 64位下 开发与运行环境搭建_第3张图片

 

[Hyperledger Fabric] 1. 在CentOS 7.2 64位下 开发与运行环境搭建_第4张图片

 

[Hyperledger Fabric] 1. 在CentOS 7.2 64位下 开发与运行环境搭建_第5张图片

 

8.      补充说明

1)      无法访问的国外网址可使用浏览器直接打开的方式测试获取的内容

2)      第七步骤获取依赖工具如果下载速度太慢,可多次退出后重新下载,测试几次后发现下速度在2K/s-60K/s

3)      添加script/bin的可执行文件至环境变量 /etc/profile

 

export PATH=/你的fabric源码存放路径/script/bin:$PATH

 

 

 

三、   FAQ

1.      完成第二步骤的第六步——安装运行环境,即nodejs后再依据官方命令安装npm时会破坏npm不可用

 

解决方案:(自动搭建脚本中已注释)

卸载nodejs再重新安装nodejs,不再执行:npm install [email protected] –g

 

卸载nodejs命令:

 

yum remove –y nodejs


安装nodejs命令:

 

 

yum install –y nodejs

 

 

2.      下载bootstrap-1.0.3.sh失败

 

curl -sSLhttps://goo.gl/Q3YRTi | bash


该命令无法正常访问外网。

 

 

解决方案:

1)      直接访问查看bootstrap-1.0.3.sh脚本内容;

如下图所示:

[Hyperledger Fabric] 1. 在CentOS 7.2 64位下 开发与运行环境搭建_第6张图片

 

2)      复制脚本内容,保存至通过git clone官方Sample codes的存放目录的scripts下并命名为:bootstrap-1.0.3.sh

 

四、   相关文件

1.      bootstrap-1.0.3.sh

具体脚本内容如下:

 

#!/bin/bash
#
# Copyright IBM Corp. All RightsReserved.
#
# SPDX-License-Identifier:Apache-2.0
#
 
export VERSION=1.0.3
export ARCH=$(echo "$(uname-s|tr '[:upper:]' '[:lower:]'|sed 's/mingw64_nt.*/windows/')-$(uname -m | sed's/x86_64/amd64/g')" | awk '{print tolower($0)}')
#Set MARCH variable i.eppc64le,s390x,x86_64,i386
MARCH=`uname -m`
 
dockerFabricPull() {
 local FABRIC_TAG=$1
 for IMAGES in peer orderer couchdb ccenv javaenv kafka zookeeper tools;do
      echo "==> FABRIC IMAGE:$IMAGES"
     echo
      docker pullhyperledger/fabric-$IMAGES:$FABRIC_TAG
      docker taghyperledger/fabric-$IMAGES:$FABRIC_TAG hyperledger/fabric-$IMAGES
 done
}
 
dockerCaPull() {
      local CA_TAG=$1
      echo "==> FABRIC CA IMAGE"
      echo
      docker pull hyperledger/fabric-ca:$CA_TAG
      docker tag hyperledger/fabric-ca:$CA_TAGhyperledger/fabric-ca
}
 
:${CA_TAG:="$MARCH-$VERSION"}
:${FABRIC_TAG:="$MARCH-$VERSION"}
 
echo "===> Downloadingplatform binaries"
curl https://nexus.hyperledger.org/content/repositories/releases/org/hyperledger/fabric/hyperledger-fabric/${ARCH}-${VERSION}/hyperledger-fabric-${ARCH}-${VERSION}.tar.gz| tar xz
 
echo "===> Pulling fabricImages"
dockerFabricPull ${FABRIC_TAG}
 
echo "===> Pulling fabricca Image"
dockerCaPull ${CA_TAG}
echo
echo "===> List outhyperledger docker images"
docker images | grep hyperledger*

 

 

 

 

 

2.      docker.repo文件

docker.repo文件所在路径:

 

/etc/yum.repos.d/docker.repo


docker.repo文件内容如下:

 

 

[dockerrepo]
name=Docker Repository
baseurl=https://yum.dockerproject.org/repo/main/centos/$releasever/
enabled=1
gpgcheck=1
gpgkey=https://yum.dockerproject.org/gpg

 

3.      docker镜像下载地址

 

 

https://hub.docker.com/u/hyperledger/

 

 

有任何问题请给我留言或直接联系我,欢迎批评指正。

 

联系方式

QQ:247706624

Email:[email protected]/[email protected]

你可能感兴趣的:(Hyperledger,Fabric,Hyperledger,Fabric,1.0.3,64位)