前言:
目前朋友们对“centos7fabric”大概比较关切,各位老铁们都想要知道一些“centos7fabric”的相关知识。那么小编在网摘上搜集了一些有关“centos7fabric””的相关知识,希望我们能喜欢,我们快快来了解一下吧!前言
本文介绍如何在Ubuntu和CentOS系统下安装部署fabric环境,并在单机上运行一个示例启动fabric网络。
这篇文章是我的同门师兄弟写的,比较详细,分享给大家。他的博客地址:
一、Ubuntu
cURL
sudo apt-get install curl
git
sudo apt-get install git
Node.js
curl -sL | sudo -E bash -sudo apt-get install -y nodejs
Docker
这里是根据官方文档推荐的通过仓库下载的方法,注意用的源是Ubuntu16.04自带的source.list,如果更改了源很可能会安装失败。
1.首先更新apt包索引:
sudo apt-get update
2.安装使用仓库所需要的相关包:
sudo apt-get install \ apt-transport-https \ ca-certificates \ curl \ software-properties-common
3.安装GPG key:
curl -fsSL | sudo apt-key add -
验证key的fingerprint是否为9DC8 5822 9FC7 DD38 854A E2D8 8D81 803C 0EBF CD88:
apt-key fingerprint 0EBFCD88
4.安装仓库
sudo add-apt-repository \ "deb [arch=amd64] \ $(lsb_release -cs) \ stable"
再次更新apt-get仓库信息并下载Docker CE
sudo apt-get updatesudo apt-get install docker-ce
5.下载成功,为了方便,可以赋给当前用户(username)以docker的权限。(这一步需要切换到root用户再切换回来才能生效,或者注销)
sudo usermod -aG docker username
Docker Compose
执行命令从github下载,并增加执行权限:
sudo curl -L -`uname -s`-`uname -m` -o /usr/local/bin/docker-composechmod +x /usr/local/bin/docker-compose
如果速度缓慢则从DaoClound下载
curl -L -`uname -s`-`uname -m` > ~/docker-composesudo mv ~/docker-compose /usr/local/bin/docker-compose chmod +x /usr/local/bin/docker-compose
Go
1.用apt-get下载版本太旧,所以使用wget从官网下载最新版本,保存路径为/usr/local
sudo wget tar -C /usr/local -xzf go1.9.linux-amd64.tar.gz
2.安装后需要配置环境变量:
vim ~/.profile
3.添加以下内容,其中GOROOT是安装路径,GOPATH是工作路径:
export GOROOT=/usr/local/go export PATH=$PATH:$GOROOT/bin export GOPATH=$HOME/go export PATH=$PATH:$GOPATH/bin
4.将go的目录GOPATH放在用户目录~下,所以需要创建go目录:
cd ~mkdir go二、CentOS
cURL
sudo yum install curl
Git
sudo yum install git
Node.js (v8.11.3)
1.下载:
wget -zxvf node-v8.11.3-linux-x64.tar.gzmv node-v8.11.3-linux-x64 /usr/local/src/node
2.配置Node环境变量:
vim ~/.bash_profile添加:export PATH=$PATH:/usr/local/src/node/bin
Docker (v18.03)
1.下载地址:选择docker-18.03.0-ce.tgz
2.安装
tar -zxvf docker-18.03.0-ce.tgzsudo cp docker/* /usr/bin/ sudo chmod a+rw /var/run/docker.sock // 增加启动权限sudo dockerd & // 启动docker daemon
注:也可以使用sudo yum install docker-io一键安装
Docker Compose (v1.12.0)
curl -L -`uname -s`-`uname -m` > ~/docker-composesudo mv ~/docker-compose /usr/local/bin/docker-compose chmod +x /usr/local/bin/docker-compose // 增加执行权限
Go (v1.9)
1.安装
sudo wget tar -C /usr/local -xzf go1.9.linux-amd64.tar.gz
2.配置环境变量
sudo vim ~/.bash_profile添加:export PATH=$PATH:/usr/local/go/bin三、fabric部署
fabric源码
1.首先需要创建对应的目录,然后在其中克隆下fabric的源码。这里注意,fabric源码中的一些工具需要通过Go语言编译,所以源码要克隆到GOPATH路径下,否则运行例子的时候会出现错误。
mkdir -p ~/go/src/github.com/hyperledgercd ~/go/src/github.com/hyperledger git clone
2.可以将代码切换到1.1.0版本
cd fabricgit checkout v1.1.0
fabric镜像下载 (v1.1.0)
1.使用DaoCloud镜像源:
curl -sSL | sh -s
2.执行项目中的脚本即可完成docker镜像的批量下载,参数可设置需要下载的镜像版本
cd ~/go/src/github.com/hyperledger/fabric/examples/e2e_cli/source download-dockerimages.sh -c x86_64-1.1.0 -f x86_64-1.1.0
也可以使用以下命令下载所有镜像
curl -sSL | bash -s 1.1.0
3.如果需要手动单独拉取某个镜像(以peer镜像为例):
docker pull hyperledger/fabric-peer:x86_64-1.1.0docker tag <imageID> hyperledger/fabric-peer:latest // 打上latest标签
fabric网络测试
这里启动fabric中的e2e_cli示例来搭建一个简单的网络
1.进入到e2e_cli目录后运行启动网络的脚本:
cd ~/go/src/github.com/hyperledger/fabric/examples/e2e_cli./network_setup.sh up
2.该脚本执行后完成了以下工作:
编译生成cryptogen工具,根据crypto-config.yaml配置文件生成网络成员的证书和私钥;通过configtxgen工具,根据configtx.yaml配置文件生成创世区块(用于启动排序节点)和通道配置交易(用于创建通道);根据docker-compose-cli.yaml配置文件启动容器,包括4Peer+Orderer+CLI;CLI容器启动时会自动运行其中脚本scripts/script.sh,完成创建通道,将节点加入通道,安装和实例化链码,执行Chaincode进行相关查询和交易的任务。
3.正常运行后关闭网络
./network_setup.sh down结束语
这篇文章还是比较详细的,希望能对大家有所帮助。
如果您认为我的文章对您有帮助,欢迎关注我的头条号「BlockChainDeveloper」。
您的支持是对我的最大的鼓励。
标签: #centos7fabric