fabric3 linux环境变量,hyperledger fabric v1.4.0 linux 环境搭建详细(1)-Go语言中文社区

一,前言

最近搭建了一套 hyperledger fabric的环境,因为涉及到很多的新知识,坑特别多,所以写个博客记录一下,也可以给新人朋友一点帮助!

本文是基于linux:ubuntu16的环境,centos7安装的差异之处本文中也有提到,低于centos 7 的操作系统无法安装超级账本1.4.0的网络。

hyperledger fabric环境搭建起来比计较复杂,所以一定要认真阅读本文,仔细按照文中的步骤进行。如果你搭建过程中出错了,一般是由于某个依赖软件版本不一致照成的,可以仔细阅读本文,找出问题所在。

开始正文:

首先按照官方文档,hyperledger fabric的环境需要依赖以下这些软件:为了保证环境正常运行,请与下方的保持一致

cURL:目前是7.64.0.

Docker和Docker compose:这个非常关键,要谨慎安装,当前是1.23

Go:go版本必须是1.11.x,

node:它是必须8.x,高版本的不支持!

Python:Python2.7,为了可以成功执行npm install命令!

OK! 进本的依赖环境已经介绍完了 ,下面介绍一下如何安装,因为可能有些人不会安装,导致运行失败挺可惜的。

二,基本依赖环境安装

1,cURL:

cURL下载链接: 下载cURL

ba4ef42c6a8999d3b9cf76c319db4cb3.png

进入后,选择最新版本下载,我这里是7.64,

直接安装的话,不支持https,所以我们要先添加对HTTPS的支持,

Ubuntu执行如下命令:

sudo apt-get install openssl

sudo apt-get install libssl-dev

centos的话,执行如下命令:

yum install openssl-devel

然后,安装cURL,

下载安装包

wget https://curl.haxx.se/download/curl-7.64.0.tar.gz

解压 :

tar -zxvf curl-7.64.0.tar.gz

进入解压后的目录

cd

执行如下命令:

./configure

如果提示:configure: error: no acceptable C compiler found in $PATH

执行

ubuntu:需要先update

sudo apt-get update

sudo apt-get install gcc

centos:

yum install gcc

然后 在执行一下./configure , 报错:

2d290466556a757f09507726436950c9.png

解决

./configure --disable-dependency-tracking

f48ad461580e87d3064e73f40520deaa.png

最后一行日志有HTTPS,则成功.

然后:

make

make install

有些在执行make命令时,如果提示没有该命令,执行 apt install make 即可

另外安装过程中会有如下提示

ef0a268531a487aac4b220d7d1eb85ef.png

意味着我们需要添加一个环境变量, /etc/profile 中添加

export LD_LIBRARY_PATH=/usr/local/lib

然后执行

source /etc/profile

OK ,执行 curl --version 查看下一下是否安装成功.

2,安装docker和docker compose

这个官网的安装教程,安装docker

下面是我按照官网的写的安装步骤,可以对比参考一下官网的进行安装。

①,设置仓库

a:更新仓库

sudo apt-get update

b: 安装包以允许apt通过HTTPS使用存储库

sudo apt-get install

apt-transport-https

ca-certificates

curl

gnupg-agent

software-properties-common

c:添加docker的官方key

curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -

验证key指纹是9DC8 5822 9FC7 DD38 854A E2D8 8D81 803C 0EBF CD88

sudo apt-key fingerprint 0EBFCD88

应出现如下提示信息

f674991f576be3cca8ef518482ebc229.png

d:设置stable 仓库

sudo add-apt-repository

"deb [arch=amd64] https://download.docker.com/linux/ubuntu

$(lsb_release -cs)

stable"

②:安装docker

sudo apt-get update

列出版本号

apt-cache madison docker-ce

d8083bd102ff499965794b6a5726fdd3.png

下面两个命令分别是安装指定版本或是安装最新版本, 执行任意一个都可以, 我们假设docker所有版本都是向上兼容的

安装指定版

sudo apt-get install docker-ce=5:18.09.2~3-0~ubuntu-bionic docker-ce-cli=5:18.09.2~3-0~ubuntu-bionic containerd.io

安装最新版

sudo apt-get install docker-ce docker-ce-cli containerd.io

③:验证docker是否安装成功

sudo docker run hello-world

下面我们再来安装 docker-compose, docker-compose的安装十分简单, 只需要把docker-compose文件下载到/usr/local/bin目录即可

执行如下命令

sudo curl -L "https://github.com/docker/compose/releases/download/1.23.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose

该命令安装的是1.23.2版本 , 如果想要安装最新版 , 移步docker-compose最新版本查看版本号,并将链接中的1.23.2替换掉即可. 注意:为了保证环境可以成功搭建,搭建跟教程中的保持一致

如果网速慢,下载失败, 可以用下载工具进行下载,传到linux的/usr/local/bin目录即可。

OK下载完成后还需要赋予docker-compose可执行的权限,

chmod +x /usr/local/bin/docker-compose

使用如下命令验证docker-compose是否安装成功

docker-compose -v

3:安装go

wget https://dl.google.com/go/go1.11.5.linux-amd64.tar.gz

下载完成后解压

tar -C /usr/local -xzf go1.11.5.linux-amd64.tar.gz

/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 version 验证一下go是否安装成功

4:安装nodejs,

error,版本号必须是8.x(程序员往往会把warning忽略掉,所以这里error仅是为了引起注意)

执行命令

curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash -

sudo apt-get install nodejs

即可,使用node -v 命令验证安装成功共与否。

4:安装python

如果是Ubuntu16的话,安装Python很简单 , 只需要一条命令

sudo apt-get install python

即可,安装完成后,通过python --version 查看一下Python的版本号 必须是2.7.x

OK,如果你已经严格按照如上所说的步骤全部成功完成了的话,那么恭喜你,你已经把hyperledger fabric的依赖环境安装好了,  对于hyperledger fabric项目的搭建你已经成功了60% , 跟着教程继续走下去吧.

三,安装示例,二进制文件,以及docker镜像

创建并进入目录 mkdir -p $GOPATH/src/github.com/hyperledger,  注意当前路径是hyperledger目录

1 , 下载fabric-sample

git clone -b v1.4.0 https://github.com/hyperledger/fabric-samples

2 ,下载二进制文件和镜像文件

然后下载二进制文件并解压 , 由于官方提供的文件下载速度慢, 我这里提供了一份压缩好的二进制文件 ,方便大家进行下载.

下载完之后解压会形成bin,和config目录, 此时列出当前目录应该有一下文件,

29f1ddcdebc3caccdfa3c963e8419f80.png

然后执行如下命令,赋予bin目录下的文件可执行权限 ,

chmod +x bin/*

下载镜像文件

cd fabric-samples/scripts

./bootstrap.sh -b

3,启动网络

将bin目录设置到系统环境变量中,并使之生效:

在/etc/profile中添加

export PATH=$PATH:$GOPATH/src/github.com/hyperledger/bin

然后执行

source profile

通过

peer version

命令来验证你的二进制文件,以及环境变量的配置是否成功,成功后的提示信息:

8a969df0e396c87237ca5515da3777d3.png

下载镜像文件

进入目录

cd fabric-samples/fabcar/

启动脚本

./startFabric.sh

进入目录

cd javascript

执行命令,(此命令执行可能报错, 后面有解决方案)

npm install

在执行命令之前,要确保你的环境已经安装了g++, 如果没有安装, 执行

centos:

yum -y install gcc+ gcc-c++

ubuntu:

apt-get install g++

另外,如果执行npm install 命令报错

NPM Unexpected end of JSON input while parsing near xxxxxxxxxxxxxx

解决办法:

first:

npm install --registry=https://registry.npm.taobao.org --loglevel=silly

then:

npm cache clean --force

安装好之后,依次 执行

node enrollAdmin.js

node registerUser.js

node query.js

b6a9312bf76e64df376eb9c9ab426604.png

如果是这种结果则说明启动成功.

下面我们停掉此网络,启动first-network网络, 进入first-network文件夹

cd ../../first-network/

停掉刚刚启动的网络

./byfn.sh down

启动first-network

./byfn.sh up

fd60de1864c969001e09ccad0f27b273.png

如果出现如下页面 , 那么恭喜你,你的超级账本1.4的环境已经搭建成功了!

环境搭建成功的同学,可以参考我的另一篇博客,进行接下来的超级账本学习。

博主QQ:2961921525,有问题的朋友可以联系, 博主会尽量给与帮助,或是直接发送QQ邮箱即可.如果您按照博主的博客搭建环境成功了,请点赞或是好评 , 也不枉博主辛辛苦苦花了一上午的时间写博客了

04a3e564116012af985cd0f19eb963e9.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值