区块链学习——HyperLedger-Fabric v1.0环境搭建详细过程

Raizel ·
更新时间:2024-11-13
· 726 次阅读

相对于v0.6版本来说,1.0版本改变较大,此处不多说,只是将小白自己搭建1.0环境的过程分享给大家。希望对大家能有所帮助!
这一篇可能对前面的环境搭建会写的有些粗略,如有疑问,可阅读上一篇V0.6版本的环境搭建详细步骤。

一.环境准备

云服务器(CentOS7.2)
Go语言环境
docker安装
docker-compose安装

二.环境搭建 2.1 更新yum

保证我们安装的软件包都是最新版本的;升级所有包同时也升级软件和系统内核

yum -y update 2.2 安装Go语言环境

Go中文网:https://studygolang.com/dl
选择Linux系统的’go1.13.5.linux-amd64.tar.gz’下载,使用Xftp上传至/usr/local目录下
然后使用以下命令进行解压:

tar -zxvf go1.13.5.linux-amd64.tar.gz

配置环境变量vim /etc/profile,在文件开头添加如下内容:

export PATH=$PATH:/usr/local/go/bin export GOROOT=/usr/local/go export GOPATH=$HOME/go export PATH=$PATH:$HOME/go/bin

重新加载配置文件:source /etc/profile
使用go env命令验证

2.3 安装Docker 2.3.1 安装docker所需要的依赖 yum install -y yum-utils device-mapper-persistent-data lvm2 2.3.2 查看docker版本并安装 yum list docker-ce --showduplicates | sort -r yum install docker-ce-18.03.1.ce 2.3.3 启动docker,设置开机启动并验证是否安装成功 systemctl start docker docker version 2.4 安装docker-compose 2.4.1 安装python-pip并进行升级,查看版本 yum install -y python-pip pip install --upgrade pip pip --version


下载docker-compose

curl -L https://github.com/docker/compose/releases/download/1.21.0/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose

进入/usr/local/bin目录下,修改下载的文件的权限

chmod +x docker-compose 三.fabric源码以及镜像下载 3.1 下载fabric源码

如果你没有安装git的话,先下载git

yum install git

在Go的工作空间中创建fabric源码目录,进入创建的目录进行下载(这一步时间较长,如果失败可以重新尝试,或者可以更换源)

mkdir -p /root/go/src/github.com/hyperledger/ cd /root/go/src/github.com/hyperledger/ git clone https://github.com/hyperledger/fabric.git


进入下载的fabric目录,然后查看我们所在的分支,再切换到v1.0.0分支

cd /usr/local/go/src/github.com/hyperledger/fabric/ git branch git checkout v1.0.0 3.2 删除0.6版本的容器以及镜像

如果你从来没启动过其他版本的fabric网络的话,可忽略此步骤
查看所有容器并删除(需要保证你的docker是启动状态)

docker ps -a docker rm -f $(docker ps -aq)

查看所有镜像并删除(需要保证你的docker是启动状态)

docker images -a docker rmi -f $(docker images -aq) 3.3 下载fabric1.0.0镜像

回到我们上上一步,此时我们已经使用git checkout v1.0.0切换到了v1.0.0分支,进入以下目录,执行官方提供的批量下载镜像的脚本即可

cd /root/go/src/github.com/hyperledger/fabric/examples/e2e_cli/ source download-dockerimages.sh -c x86_64-1.0.0 -f x86_64-1.0.0

等待下载完成后执行docker images命令查看下载的镜像,如下图:

四.启动与测试 4.1 启动fabric网络

使用官方提供的自动化脚本进行启动和关闭,接下来我们启动官方提供的测试用例example02(注意:此时我们还在/root/go/src/github.com/hyperledger/fabric/examples/e2e_cli/目录下)

./network_setup.sh up

如果无报错,出现以下页面,则启动成功;如果有报错,则在最后,有笔者在搭建时遇到的错误,可进行参考。

4.2 测试 4.2.1 查询a的余额(-C:指定通道;-n:指定链码名称) peer chaincode query -C mychannel -n mycc -c '{"Args":["query","a"]}'

4.2.2调用链码,a给b转账50元

(-o:指定背书节点; tls=true:开启加密通信;cafile:指定证书文件的路径)

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","50"]}'

4.2.3 再一次查询a的余额

五.错误

这一部分只是记录笔者自己在搭建过程中遇到的错误,如有其他错误,请自行百度。

错误1:


解决方案:修改/etc/resolv.conf文件,将options开头的一行注释掉,修改后的文件如下图:

错误2:


解决方案:修改/root/go/src/github.com/hyperledger/fabric/examples/e2e_cli/base/目录下的peer-bash.yaml文件,修改名称为e2e_cli_default,修改完如下图:

最后呢,说明一下,作者也是刚入坑的小白,这篇文章也就是记录一下原始搭建的过程,方便以后查看。如果对你有帮助的话,非常荣幸,如果有不对的地方,欢迎留言指正!

参考文章

博客园深蓝居


作者:GarudaAiacos



区块链学习 环境搭建 环境 hyperledger 学习 fabric 区块链

需要 登录 后方可回复, 如果你还没有账号请 注册新账号
相关文章