Hyperledger-fabric 环境搭建

Hyperledger-fabric 环境搭建

按着官方文档的步骤先配置前置环境

https://hyperledger-fabric.readthedocs.io/en/latest/prereqs.html

Hyperledger fbric 1.4.5

Ubuntu 18.04

0. 配置下虚拟机网络

因为众所周知的原因,国内网络不是很通畅,使用魔法后设置允许局域网使用。

在wired settings中设置Network Proxy,全部指向本机的魔法端口

1. 安装git

Install Git

Download the latest version of git if it is not already installed, or if you have problems running the curl commands.

先装个Git

sudo apt install git

# 安装完后查询git版本
[email protected]:~$ git version
git version 2.17.1

2. 安装curl

Install cURL

Download the latest version of the cURL tool if it is not already installed or if you get errors running the curl commands from the documentation.

安装curl工具

sudo apt install curl

# 安装完后查询curl版本
[email protected]:~$ curl --version
curl 7.58.0 (x86_64-pc-linux-gnu) libcurl/7.58.0 OpenSSL/1.1.1 zlib/1.2.11 libidn2/2.0.4 libpsl/0.19.1 (+libidn2/2.0.4) nghttp2/1.30.0 librtmp/2.3
Release-Date: 2018-01-24
Protocols: dict file ftp ftps gopher http https imap imaps ldap ldaps pop3 pop3s rtmp rtsp smb smbs smtp smtps telnet tftp
Features: AsynchDNS IDN IPv6 Largefile GSS-API Kerberos SPNEGO NTLM NTLM_WB SSL libz TLS-SRP HTTP2 UnixSockets HTTPS-proxy PSL 

3. 安装wget

Install wget

If you will be downloading Fabric binaries based on the Install Samples, Binaries, and Docker Images documentation, you will need wget installed.

sudo apt install wget

# 安装完后查询wget版本
[email protected]:~$ wget --version
GNU Wget 1.19.4 built on linux-gnu.

4. 安装Docker和Docker-compose

Docker and Docker Compose

You will need the following installed on the platform on which you will be operating, or developing on (or for), Hyperledger Fabric:

  • MacOSX, *nix, or Windows 10: Docker Docker version 17.06.2-ce or greater is required.
  • Older versions of Windows: Docker Toolbox - again, Docker version Docker 17.06.2-ce or greater is required.

操作来源:https://zhuanlan.zhihu.com/p/106186391

# 安装工具让apt可以支持HTTPS方式获取包
sudo apt install apt-transport-https ca-certificates curl software-properties-common

# 将官方Docker库的GPG公钥添加到系统中
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -

# 将Docker库添加到apt里
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu bionic stable"

# 再次更新下apt库列表
sudo apt update

# 开始安装docker-ce
sudo apt install docker-ce

# 安装完成查询版本号
docker --version

[email protected]:~$ docker --version
Docker version 19.03.6, build 369ce74a3c

# 开始安装docker-compose
sudo apt install docker-compose

# 安装完成后查询docker-compose版本号
docker-compose --version

[email protected]:~$ docker-compose --version
docker-compose version 1.17.1, build unknown

安装完docker之后还需要将使用的用户加入docker的用户组中,不然使用docker会报permission denied错误

[email protected]:~$ docker images
Got permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Get http://%2Fvar%2Frun%2Fdocker.sock/v1.40/images/json: dial unix /var/run/docker.sock: connect: permission denied

执行以下语句

sudo usermod -a -G docker <username>

此处填上使用的用户名

5. 安装Golang

进入 https://golang.org/dl/ 官网下载最新版go安装包

安装后进行解压操作

sudo tar -C /usr/local -xzf go1.13.8.linux-amd64.tar.gzip

添加路径

Add /usr/local/go/bin to the PATH environment variable. You can do this by adding this line to your /etc/profile (for a system-wide installation) or $HOME/.profile:

export PATH=$PATH:/usr/local/go/bin

# 使用source命令让配置生效
source ~/.profile

# 查看go的版本
go version

[email protected]:~$ go version
go version go1.13.8 linux/amd64

# 设置GOROOT和GOPATH环境变量
vim ~/.bashrc
# 在最后一行加入
export GOROOT=/usr/local/go #GOROOT是系统上安装Go软件包的位置。
export GOPATH=/home/hadoop/GOPATH #GOPATH是工作目录的位置。
export PATH=$GOPATH/bin:$GOROOT/bin:$PATH

# 使用source命令更新配置
source ~/.bashrc

# 验证环境变量配置
[email protected]:~$ echo $GOROOT
/usr/local/go
[email protected]:~$ echo $GOPATH
/home/nykuvl/go

6. 安装Node.js和NPM

Node.js Runtime and NPM

If you will be developing applications for Hyperledger Fabric leveraging the Hyperledger Fabric SDK for Node.js, version 8 is supported from 8.9.4 and higher. Node.js version 10 is supported from 10.15.3 and higher.

sudo apt isntall node.js

sudo apt install npm

# 更新node到长服务版
sudo npm install -g n
sudo n lts

# 更新npm
sudo npm i -g npm

# 查看版本
[email protected]:~/go$ npm -v
6.13.4
[email protected]:~/go$ node -v
v12.16.1

7. 安装python

# 安装python2
sudo apt install python
# 安装python3
sudo apt install python3

# 查看版本
[email protected]:~/go$ python --version
Python 2.7.17
[email protected]:~/go$ python3 --version
Python 3.6.9

8. 安装Hyperledger fabric

curl -sSL https://bit.ly/2ysbOFE | bash -s

一键安装fabric最新环境,但是网络条件不允许安装过程及其满并且出现错误没法及时处理

先把fabric的GitHub项目拉下来

# 创建$GOPATH目录下的src/github.com/hyperledger目录
mkdir -p /home/nykuvl/go/src/github.com/hyperledger
# 进入目录
cd $GOPATH/src/github.com/hyperledger

# 拉取项目
git clone https://github.com/hyperledger/fabric.git

# 切换版本到1.4
git branch -a
git checkout release-1.4

# 安装相关依赖软件 先进入GOPATH路径再进行以下操作
go get github.com/golang/protobuf/protoc-gen-go
mkdir -p $GOPATH/src/github.com/hyperledger/fabric/build/docker/gotools/bin
cp $GOPATH/bin/protoc-gen-go $GOPATH/src/github.com/hyperledger/fabric/build/docker/gotools/bin

# 编译Fabric模块,进入Fabric源码所在文件夹
cd $GOPATH/src/github.com/hyperledger/fabric

make release

# 将编译后的二进制文件复制到系统文件夹中
sudo cp $GOPATH/src/github.com/hyperledger/fabric/release/linux-amd64/bin/* /usr/local/bin

# 确认版本号
[email protected]:~/go/src/github.com/hyperledger/fabric$ configtxgen -version
configtxgen:
 Version: 1.4.5
 Commit SHA: 11ff99170
 Go version: go1.13.8
 OS/Arch: linux/amd64
[email protected]:~/go/src/github.com/hyperledger/fabric$ configtxlator version
configtxlator:
 Version: 1.4.5
 Commit SHA: 11ff99170
 Go version: go1.13.8
 OS/Arch: linux/amd64
[email protected]:~/go/src/github.com/hyperledger/fabric$ peer version
peer:
 Version: 1.4.5
 Commit SHA: 11ff99170
 Go version: go1.13.8
 OS/Arch: linux/amd64
 Chaincode:
  Base Image Version: 0.4.18
  Base Docker Namespace: hyperledger
  Base Docker Label: org.hyperledger.fabric
  Docker Namespace: hyperledger

[email protected]:~/go/src/github.com/hyperledger/fabric$ orderer version
orderer:
 Version: 1.4.5
 Commit SHA: 11ff99170
 Go version: go1.13.8
 OS/Arch: linux/amd64

[email protected]:~/go/src/github.com/hyperledger/fabric$ cryptogen version
cryptogen:
 Version: 1.4.5
 Commit SHA: 11ff99170
 Go version: go1.13.8
 OS/Arch: linux/amd64

接下来处理docker镜像

# 拉取docker镜像,我使用时问题很多,就不使用这个脚本了,手动拉取镜像
// make docker

docker pull hyperledger/fabric-baseos:0.4.18 # 基础镜像文件,其他镜像文件在该镜像文件的基础上生成
docker pull hyperledger/fabric-baseimage:0.4.18 # 基础镜像文件包含了jdk、golang、nodejs等,可以用来生成chaincode
docker pull hyperledger/fabric-peer:1.4 # peer模块镜像文件
docker pull hyperledger/fabric-ca:1.4 # ca模块镜像文件
docker pull hyperledger/fabric-tools:1.4 # 相关工具镜像文件,包含了cryptogen、configtxgen、configtxlator等工具
docker pull hyperledger/fabric-couchdb:0.4.18 # couchdb数据库镜像文件
docker pull hyperledger/fabric-kafka:0.4.18 # kafka库镜像文件
docker pull hyperledger/fabric-zookeeper:0.4.18 # zookeeper库镜像文件
docker pull hyperledger/fabric-orderer:1.4 # orderer节点库镜像文件
docker pull hyperledger/fabric-ccenv:1.4 # Go语言chaincode运行环境镜像文件

原文地址:https://www.cnblogs.com/nykuvl/p/12343588.html

时间: 2024-08-29 19:54:43

Hyperledger-fabric 环境搭建的相关文章

Hyperledger Fabric环境搭建过程

简单记录一下fabric版本1.4的环境搭建,运行环境为Ubuntu18.04,其中一些内容是根据官方文档整理的,如有错误欢迎批评指正. 本文只介绍最简单的环境搭建方法,具体的环境搭建解析在这里深入解析Hyperledger Fabric启动的全过程 . 1.搭建Fabric的前置条件 为了提高下载速度,这里将Ubuntu的源改为国内的源(以阿里源为例): #首先进行配置文件的备份 sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak #

联盟链初识以及Fabric环境搭建流程

这篇文章首先简单介绍了联盟链是什么,再详细的介绍了Fabric环境搭建的整个流程. 区块链分类: 以参与方式分类,区块链可以分为:公有链.联盟链和私有链. 定义: 我们知道区块链就是一个分布式的,去中心化的公共数据库(或称公共账本).而联盟链是区块链的一个分支,所以它本身也是一个分布式的,去中心化的公共数据库,跟其他链的区别就是它是针对特定群体的成员和有限的第三方,其内部指定多个预选节点为记账人,其共识过程受到预选节点控制的区块链 本质 联盟链本质仍然是一种私有链,只不过它要比单个小组织开发的私

深入理解Fabric环境搭建的详细过程

博主之前的文章都是教大家怎么快速的搭建一个Fabric的环境,但是其中大量的工作都隐藏到了官方的脚本中,并不方便大家深入理解其中的过程,所以博主这里就将其中的过程一步步分解,方便大家! 前面的准备工作我就不用多说了,也就是各种软件和开发环境的安装,安装好以后,我们git clone下来最新的代码,并切换到v1.0.0,并且下载好我们需要使用的docker镜像,也就是到步骤6,接下来我们要解析的是之后的步骤,也就是真正的搭建Fabric的过程. 1.生成公私钥和证书 Fabric中有两种类型的公私

fabric 环境搭建 和 部署 智能合约 - (实习第二天)

首先安装docker,安装的时候有坑,坑就是资料没找对. 这篇博客的意义就是没有坑安装好,部署好. 我用的是 Ubuntu 18.04 安装Docker-ce,这下面的安装方式就是菜鸟教程的,可以去哪看. 1.更换国内软件源,推荐中国科技大学的源,稳定速度快(可选) sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak sudo sed -i 's/archive.ubuntu.com/mirrors.ustc.edu.cn/g' /et

深入解析Hyperledger Fabric启动的全过程

在这篇文章中,使用fabric-samples/first-network中的文件进行fabric网络(solo类型的网络)启动全过程的解析.如有错误欢迎批评指正. 至于Fabric网络的搭建这里不再介绍,可以参考这一篇文章Hyperledger Fabric环境搭建过程 fabric网络:单机,solo类型,两个组织,分别有两个节点 首先看一下该文件夹内有哪些文件: base connection-org2.json docker-compose-cli.yaml docker-compose

Hyperledger Fabric动态配置Raft节点

Hyperledger Fabric动态配置Raft节点 最近看官方文档发现新的共识算法etcdRaft允许动态添加或删除排序节点,所以也花了一天时间操作了以下,写篇文章把整个过程记录一下. 初始网络本文设置了4个Orderer节点,1个Peer节点(用于更新配置文件以及测试用),然后动态添加第五个Orderer节点. 本文分成两个部分: 第一部分是手动通过Fabric-CA生成每一个节点的证书文件 第二部分是更新Fabric网络配置添加新的Orderer节点. 本文基于Fabric v2.0.

Hyperledger Fabric V1.0 for Centos7.2 开发环境搭建

区块链技术大有可为, 安装组件如下: 1.Docker-compose:Docker 容器管理: 2.Go lang SDK:Go 语言开发.编译环境: 3.Git:git 镜像克隆与提交: 4.Rest Client: rest API 测试: 容器主要运行有:MemberSrv 和Peer; 一.HyperLedger Fabric环境准备 a)检查版本 $ uname –r 3.10.0-229.el7.x86_64 b)更新Centos yum update c)安装需要软件 yum i

HyperLedger Fabric基于zookeeper和kafka集群配置解析

简述 在搭建HyperLedger Fabric环境的过程中,我们会用到一个configtx.yaml文件(可参考Hyperledger Fabric 1.0 从零开始(八)--Fabric多节点集群生产部署),该配置文件主要用于构建创世区块(在构建创世区块之前需要先创建与之对应的所有节点的验证文件集合),其中在配置Orderer信息中有一个OrdererType参数,该参数可配置为"solo" and "kafka",之前博文所讲的环境配置皆是solo,即单节点共

基于docker的 Hyperledger Fabric 多机环境搭建(上)

环境:ubuntu 16.04 Docker  17.04.0-ce go 1.7.4 consoul v0.8.0.4 ======================================================================= 一.项目准备 想必能搜到这篇文章的人对Hyperledger Fabric(以下简称Fabric)已经是有了一定的了解了,我就不多介绍了. 先说一下Fabric的构建环境: Hyperledger Fabric  tag v1.0.0

(一)Hyperledger Fabric 1.1安装部署-基础环境搭建

在学习和开发hyperledger fabric的时候遇到了一些坑,现将自己的一些总结和心得整理如下,以期对大家有所帮助.本次使用的宿主机环境:ubuntu,版本:Ubuntu 16.04.3 LTS.运行hyperledger fabric,建议至少4GB的内存. 更改aptget源:初装ubuntu的Aptget源很慢,国内提供的源有很多,可以找一个适合自己的,我采用的是阿里的源.更改aptget阿里源的方法:1 复制原文件备份 sudo cp /etc/apt/sources.list /