Hyperledger Fabric 2.1 搭建教程

环境准备

版本

  • Ubuntu 18.04
  • go 1.14.4
  • fabric 2.1
  • fabric-sample v1.4.4
  • nodejs 12.18.2

Docker 安装

  1. 卸载旧版本
sudo apt-get remove docker docker-engine docker.io containerd runc
  1. 安装依赖
sudo apt-get install \
apt-transport-https \
ca-certificates \
curl \
gnupg-agent \
software-properties-common
  1. 添加 Docker 的官方 GPG 密钥
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
  1. 设定稳定版仓库
sudo add-apt-repository \
"deb [arch=amd64] https://download.docker.com/linux/ubuntu \
$(lsb_release -cs) \
stable"
  1. 更新源
sudo apt-get update
  1. 安装
sudo apt-get install docker-ce docker-ce-cli containerd.io
  1. 添加当前用户到docker用户组
sudo usermod -aG docker johnny
  1. 安装docker-compose
   sudo apt-get install docker-compose

go 安装

下载go的安装包,放入/usr/local目录下

sudo tar -zxvf go1.14.4.linux-amd64.tar.gz
vim ~/.profile

在末尾加上如下内容

export GOROOT=/usr/local/go
export GOPATH=$HOME/go
export PATH=$PATH:$HOME/go/bin
export PATH=$PATH:/usr/local/go/bin
source ~/.profile

配置go的国内代理以加速访问

echo "export GOPROXY=https://goproxy.cn" >> ~/.profile
source ~/.profile

node 安装(可选)

安装node主要是为了测试我们的网络用

  1. cd ~/,运行
git clone https://github.com/nvm-sh/nvm.git .nvm
  1. 完成之后cd ~/.nvm并且git checkout v0.35.3

  2. 然后运行安装脚本.install.sh,然后关闭当前shell重新打开,运行nvm,提示如下则代表安装成功.

  1. 安装12.18.2版本

    nvm install 12.18.2

fabric-sample 克隆

创建如下目录并进入,其中johnny为我的用户名

/home/johnny/go/src/github.com/hyperledger

然后克隆fabric-sample

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

安装二进制文件,网速不好的话这部分非常慢.

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

如果这步实在无法搞定,那么下载我提供的bootstrap.sh[链接:https://pan.baidu.com/s/1AL2DGMIYOVHo1tkYOBe_cA

提取码:oz1k]脚本,手动运行.

脚本主要包含三大功能,下载docker镜像,Sample和二进制文件,编辑如下三个位置,设置成true则会执行,false则跳过,各位可以按需来弄.

DOCKER=true

SAMPLES=true

BINARIES=true

成功之后fabric-sample目录下就会有bin目录和config目录,并且bin目录下有如下文件\

加入PATH到 ~/.profile

export PATH=/home/johnny/go/src/github.com/hyperledger/fabric-samples
/bin:$PATH
source ~/.profile

之后在bash中输入peer如果如图显示则代表配置成功.

测试

环境配好了需要测试一下,切到fabric-samples下的fabcar目录

运行启动网络

./startFabric.sh

成功的话会显示如下界面

同时用命令docker ps查看docker如下

cd javascript目录下,运行npm install

之后运行

node enrollAdmin.js

提示如下则代表测试成功,enrollAdmin.js负责添加一个Admin用户

node registerUser.js

node query.js ## 查询

总结

看了各处的教程,发现都是Fabric1.4版本的,按照他们来弄最后创建网络的时候总是报错.本次参考官方的文档搭建的基础环境.能跑通官方的Fabcar示例代码.

Hyperledger Fabric 2.1 搭建教程的更多相关文章

  1. Hyperledger Fabric 入门 first-network 搭建

    1.准备环境: 安装git.docker.curl.go [root@test_vonedao_83 fabric]# git --version git version 1.8.3.1 [root@ ...

  2. Hyperledger Fabric 开发环境搭建 centos7系统

    一.安装GO语言 下载最新版的go 打开Terminal,输入命令(以下命令都是以root管理员的角色进行的) su 输入密码:***** wget https://storage.googleapi ...

  3. Hyperledger Fabric 1.0 从零开始(一)

    在HyperLedger/Fabric发布0.6的时候,公司就已经安排了一个团队研究这一块,后来也请IBM的专家组过来培训了一批人,不幸的是,这批人后来全走了,然后1.0就发布了.自从2017年7月H ...

  4. 【推荐】 HyperLedger Fabric环境搭建、测试及注意事项 [详尽指导] [亲测有效]

    系统:Ubuntu16.04 LTS 一.环境准备 1.1 Ubuntu下安装 crul sudo apt install curl curl是利用URL语法在命令行方式下工作的开源文件传输工具.它被 ...

  5. 区块链Hyperledger Fabric 学习记录(一)开发环境搭建(ubuntu16.04/ubuntu18.04)

    目录 Fabric开发环境搭建 更新说明 教程环境及软件版本 Docker 安装Docker 配置用户组 配置Aliyun Docker加速器 安装docker-compose Go 下载源码 安装源 ...

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

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

  7. Hyperledger Fabric 1.4 快速环境搭建

    自己的硕士研究方向和区块链有关,工程上一直以IBM的Hyperledger Fabric为基础进行开发,对该项目关注也有两年了.目前迎来了Hyperledger Fabric v1.4,这也是Fabr ...

  8. 7.搭建hyperledger fabric环境及启动——2019年12月12日

    2019年12月12日13:05:16 声明:从网络中学习整理实践而来. 1.介绍fabric Fabric 是一个面向企业应用的区块链框架,基于 Fabric 的开发可以粗略分为几个层面: 1. 参 ...

  9. 基于Debian搭建Hyperledger Fabric 2.4开发环境及运行简单案例

    相关实验源码已上传:https://github.com/wefantasy/FabricLearn 前言 在基于truffle框架实现以太坊公开拍卖智能合约中我们已经实现了以太坊智能合约的编写及部署 ...

随机推荐

  1. httpd解析php的小贴士

    以前使用php的时候, 都是直接用nginx和php对接的, 极少是用apache去对接, 但是最近在用httpd测试WordPress的时候, 发现一个有趣的问题, php不用启动也能直接去解析ph ...

  2. 使用vw进行移动端适配(nuxt项目)

    基于nuxt 2.0.0 一.安装postcss-px-to-viewport npm安装 npm install postcss-px-to-viewport --save-dev 或 yarn安装 ...

  3. python反向遍历一个可迭代对象

    我们通常情况下都是正向遍历一个列表,下面是一种简单的反向遍历一个列表的方式. ## 正向遍历 >>>A = [9, 8, 7] >>>for index, a in ...

  4. c++ cc24a_demo //转换函数,用来做转换操作符,int()括号里面必须是空的,必须定义为const,代码示范

    c++ cc24a_demo //转换函数,用来做转换操作符,int()括号里面必须是空的,必须定义为const,代码示范 #include <iostream> #include < ...

  5. 用OpenPyXL处理Excel表格 - 向sheet读取、写入数据

    假设一个名叫"模板"的excel表格里有四个sheet,名字分别是['平台', '制冷', '洗衣机', '空调'] 1.读取 from openpyxl import load_ ...

  6. 06 . Jenkins分布式构建和Pipline

    Pipline简介 pipline 是帮助 Jenkins 实现 CI 到 CD 转变的重要角色,是运行在 jenkins 2.X 版本的核心插件,简单来 说 Pipline 就是一套运行于 Jenk ...

  7. Andrew Ng - 深度学习工程师 - Part 1. 神经网络和深度学习(Week 3. 浅层神经网络)

     =================第3周 浅层神经网络=============== ===3..1  神经网络概览=== ===3.2  神经网络表示=== ===3.3  计算神经网络的输出== ...

  8. 效率思维模式与Zombie Scrum

    Scrum是由Ken Schwaber和Jeff Sutherland在20世纪90年代提出的概念,并在1995年首次正式确定.起初Scrum是为了解决产品和软件开发固有的复杂性,然而现在Scrum被 ...

  9. 4.WebPack-Loader

    一.什么是Loader WebPack默认只"认识"以*.js结尾的文件,如果想处理其他类型的文件,就必须添加Loader,有各种各样的Loader,每个Loader可处理不同类型 ...

  10. 学习Linux必须掌握的一个知识-i节点

    linux文件系统是Linux系统的心脏部分,提供了层次结构的目录和文件.文件系统将磁盘空间划分为每1024个字节一组,称为块(也有用512字节为一块的,如:SCOXENIX).编号从0到整个磁盘的最 ...