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. javascript 面向对象学习(二)——原型与继承

    什么是原型? 首先我们创建一个简单的空对象,再把它打印出来 var example = {} console.log(example) 结果如下: { __proto__: { constructor ...

  2. CentOS 7设置静态IP并修改DNS

    1. 设置静态IP 首先需要确定网线插在服务器的哪一个网络接口上,接口旁边一般都有写.我这边是插在1号接口上的. 然后修改网络配置文件,文件位于 /etc/sysconfig/network-scri ...

  3. Node.js搭建简易用户登录

    根据学习笔记一的知识点搭建的简易用户注册登录模块,用户数据暂用json保存. HTML: <!DOCTYPE html> <html lang="en" dir= ...

  4. 恕我直言你可能真的不会java第2篇:Java Stream API?

    一.什么是Java Stream API? Java Stream函数式编程接口最初是在Java 8中引入的,并且与lambda一起成为Java开发的里程碑式的功能特性,它极大的方便了开放人员处理集合 ...

  5. ca69a.cpp_c++_函数匹配(重载确定)

    /*ca69a.cpp_c++_函数匹配(重载确定)#重载确定的三个步骤1.候选函数2.选择可行函数3.寻找最佳匹配(如果有的话)#含有多个形参的重载确定 void f1();void f1(int) ...

  6. 错误 C2679二进制“没有找到接受“std::string”类型的右操作数的运算符(或没有可接受的转换

    错误 C2679二进制“没有找到接受“std::string”类型的右操作数的运算符(或没有可接受的转换 严重性 代码 说明 项目 文件 行 禁止显示状态错误 C2679 二进制“<<”: ...

  7. 手把手教你学Numpy,搞定数据处理——收官篇

    本文始发于个人公众号:TechFlow,原创不易,求个关注 今天是Numpy专题第6篇文章,我们一起来看看Numpy库当中剩余的部分. 数组的持久化 在我们做机器学习模型的研究或者是学习的时候,在完成 ...

  8. python多线程+生产者和消费者模型+queue使用

    多线程简介 多线程:在一个进程内部,要同时干很多事情,就需要同时执行多个子任务,我们把进程内的这些子任务叫线程. 线程的内存空间是共享的,每个线程都共享同一个进程的资源 模块: 1._thread模块 ...

  9. 工业4.0:换热站最酷设计—— Web SCADA 工业组态软件界面

    前言 随着工业4.0的不断普及与发展,以及国民经济的飞速前进,我国的城市集中供热规模也不断扩大,科学的管理热力管网具有非常重大的经济和社会效益.目前热力系统,如换热站大都采用人工监控,人工监控不仅浪费 ...

  10. 黎活明8天快速掌握android视频教程--15_采用Pull解析器解析和生成XML内容

    1.该项目主要有下面的两个作用 (1)将xml文件解析成对象的List对象,xml文件可以来自手机本地,也可以来自服务器返回的xml数据 (2)强list对象保存成xml文件,xml保存到手机的内存卡 ...