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. AWS 创建redis 集群模式遇到的问题

    问题描述 前几天在aws 平台创建了Redis 集群模式,但是链接集群的时候发现无法连接,返回信息超时. 通过参数组创建redis的时候提示报错:Replication group with spec ...

  2. 计算从1到n中,出现某位数字的次数

    出现1-9中某位数字次数的算法 /** * @param input 整数n(1 ≤ n ≤ 1,000,000,000) * @return 1-9中某个数字在数列中出现的次数 */ public ...

  3. Canvas绘制圆点线段

    最近一个小伙遇到一个需求,客户需要绘制圆点样式的线条. 大致效果是这样的: 思路一:计算并使用arc填充 他自己实现了一种思路,然后咨询我有没有更好的思路. 先看看他的思路是如何实现的,大致代码如下: ...

  4. 关于Integer类的值使用==比较

    题记:前几天面试Java基础给来了个面试题Integer a=100,b=100;System.out.println(a==b); 当时回答是true,后来面试官又来了一个Integer a=200 ...

  5. 关于"touchstart与click同时触发"问题

    点击事件可以分解成多个事件: 在移动端,手指点击一个元素,会经过:touchstart --> touchmove -> touchend -->  click 由于移动设备能够同时 ...

  6. PHP配合JS导出Excel大量数据

    一般使用PHP导出Excel表格都会用PHPExcel,但是当遇到要导出大量数据时,就会导致超时,内存溢出等问题.因此在项目中放弃使用这种方式,决定采用前段生成Excel的方式来解决问题. 步骤如下: ...

  7. 关于Api的那些事儿!

    工作中一直在写Api数据接口,但大部分的Api都存在这样的问题 1.接口请求的地址和参数暴露 2.重要接口返回数据明文暴露 3.APP登录态请求的数据完全性问题 4.代码层的数据完全性问题(从代码层有 ...

  8. Ubuntu18.04下使用Hexo框架搭建个人博客

    一.安装node.js 说明:安装node.js的原因:Hexo框架是基于node.js. 1.推荐使用nvm安装速度快,也可自行百度其它方法. wget -qO- https://raw.githu ...

  9. 09.DRF-ModelSerializer

    四.模型类序列化器ModelSerializer 如果我们想要使用序列化器对应的是Django的模型类,DRF为我们提供了ModelSerializer模型类序列化器来帮助我们快速创建一个Serial ...

  10. HTML5如何垂直居中一个浮动元素

    html如何垂直居中一个浮动元素//方法一:已知元素的高宽#div1{background-color:#6699FF;width:200px;height:200px;position:absolu ...