相对与v0.6版本来说,1.0版本改变较大,此处不多说,只是将小白自己搭建1.0环境的过程分享给大家。希望对大家能有所帮助!

这一篇可能对前面的环境搭建会写的有些粗略,如有疑问,可阅读上一篇V0.6版本的环境搭建详细步骤。

一.环境准备

云服务器(CentOS7.2)

Go语言环境

docker安装

docker-compose安装

二.环境搭建

更新yum

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

yum -y update

安装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命令验证

安装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

安装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源码以及镜像下载

下载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

删除0.6版本的容器以及镜像

如果你从来没启动过其他版本的fabric网络的话,可忽略此步骤

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

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

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

docker images -a
docker rmi -f $(docker images -aq)

下载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命令查看下载的镜像,如下图:

四.启动与测试

启动fabric网络

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

./network_setup.sh up

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

测试

查询a的余额(-C:指定通道;-n:指定链码名称)

peer chaincode query -C mychannel -n mycc -c '{"Args":["query","a"]}'

调用链码,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"]}'

再一次查询a的余额

错误

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

错误1:



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

错误2:



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

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

参考

深蓝居博客

区块链学习——HyperLedger-Fabric v1.0环境搭建详细教程的更多相关文章

  1. Ubuntu下搭建Hyperledger Fabric v1.0环境

      多次尝试才正常启动了Fabric,如遇到各种莫名错误,请参考如下一步步严格安装,特别用户权限需要注意. 一.安装Ubuntu16 虚拟机或双系统,虚拟机有VirtualBox或者VMware,Ub ...

  2. 三、主流区块链技术特点及Hyperledger Fabric V1.0版本特点

    一.Hyperledger fabric V1.0 架构 1.逻辑架构: 2.区块链网络 3.运行时架构 二.架构总结 1.架构要点 分拆Peer的功能,将Blockchain的数据维护和共识服务进行 ...

  3. 003-主流区块链技术特点及Hyperledger Fabric V1.0版本特点

    一.Hyperledger fabric V1.0 架构 1.逻辑架构: 2.区块链网络 3.运行时架构 二.架构总结 1.架构要点 分拆Peer的功能,将Blockchain的数据维护和共识服务进行 ...

  4. Hyperledger fabric 1.4 环境搭建(一)

    Hyperledger fabric 1.4 环境搭建(一) 1.更换下载源 更换apt的下载源,因为官方下载源很慢,需要更换到国内的镜像站 1.1.进入/etc/apt/目录 cd etc/apt ...

  5. Win10 Anaconda下TensorFlow-GPU环境搭建详细教程(包含CUDA+cuDNN安装过程)(转载)

    win7(win10也适用)系统安装GPU/CPU版tensorflow Win10 Anaconda下TensorFlow-GPU环境搭建详细教程(包含CUDA+cuDNN安装过程) 目录 2.配置 ...

  6. 区块链 Hyperledger Fabric v1.0.0 环境搭建

    前言:最近项目涉及到超级账本,在有些理论知识的基础上,需要整一套环境来. 这是一个特别要注意的事情,笔者之前按照网络上推荐,大部分都是推荐ubuntu系统的,于是下载Ubuntu系统(16.04.5和 ...

  7. 安装hyperledger fabric V1.0.1

      安装文档位置: https://github.com/hyperledger/fabric   fabric代码托管地址 https://hyperledger-fabric.readthedoc ...

  8. 安装hyperledger fabric V1.0.0-beta

      安装文档位置: https://github.com/hyperledger/fabric   fabric代码托管地址 https://hyperledger-fabric.readthedoc ...

  9. 区块链学习——HyperLedger-Fabric v0.6环境搭建详细教程

    v0.6 的架构相对简单,适合作为实验或学习来使用. 一.环境准备 一台云服务器(笔者使用的是阿里云的1核-2GB内存) Go语言环境 Docker安装 docker-compose安装 二.环境搭建 ...

随机推荐

  1. 《Java基础教程》第一章学习笔记

    Java 是什么呀! 计算机语言总的来说分成机器语言,汇编语言,高级语言.其中Java一种高级计算机语言,它是一种可以编写跨平台应用软件,完全面向对象的程序设计语言. Java划分为三个技术平台,Ja ...

  2. 【论文阅读】Clustering Convolutional Kernels to Compress Deep Neural Networks

    文章:Clustering Convolutional Kernels to Compress Deep Neural Networks 链接:http://openaccess.thecvf.com ...

  3. 小白学 Python 爬虫(7):HTTP 基础

    人生苦短,我用 Python 前文传送门: 小白学 Python 爬虫(1):开篇 小白学 Python 爬虫(2):前置准备(一)基本类库的安装 小白学 Python 爬虫(3):前置准备(二)Li ...

  4. 痞子衡嵌入式:恩智浦机器视觉模块OpenMV-RT那些事(1)- 初体验

    大家好,我是痞子衡,是正经搞技术的痞子.本系列痞子衡给大家介绍的是机器视觉模块OpenMV-RT初体验. 近些年机器视觉应用一直是个很火的方向,想象一下机器如果能长上"眼睛",是不 ...

  5. Linux错误:Unable to locate package解决

    新买一个用于机器学习的实例,镜像系统Ubuntu.想安装一个上传.下载的包. 使用命令: sudo apt-get install lrzsz 结果一直报错: 解决方法: 使用命令: sudo apt ...

  6. OOXML中回车等特殊字符处理方法

    问题点:NPOI处理xlsx文档时,将\r写成了换行符. 实例:以下字符abc\rcde 如果直接复制到Excel 2016,显示结果如下(单元格设置为折行显示): 如果用NPOI写入Xlsx文档,显 ...

  7. Django REST framework(DRF)

    Django REST framework(DRF) FBV与CBV CBV源码分析 Restful接口规范 DRF简单配置使用和源码解析 DRF序列化器 DRF10大接口 DRF视图集 三大组件 j ...

  8. webpack4分包方案

    webpack4放弃了 commonsChunkPlugin,使用更方便灵活智能的 splitChunks 来做分包的操作. 下面有几个例子,并且我们假设所有的chunks大小至少为30kb(采用sp ...

  9. python原类、类的创建过程与方法

    今天为大家介绍一下python中与class 相关的知识-- 获取对象的类名 python是一门面向对象的语言,对于一切接对象的python来说,咱们有必要深入的学习与了解一些知识 首先大家都知道,要 ...

  10. 转:Java transient关键字使用小记

    哎,虽然自己最熟的是Java,但很多Java基础知识都不知道,比如transient关键字以前都没用到过,所以不知道它的作用是什么,今天做笔试题时发现有一题是关于这个的,于是花个时间整理下transi ...