Hyperledger Fabric 部署

Hyperledger Fabric需要使用Docker、Go环境。

Docker环境安装

Docker环境安装 直接查看这一篇,安装好之后将当前用户非root添加到Docker用户组中

#创建docker用户组
sudo groupadd docker #将当前用户添加到docker用户组
sudo usermod -aG docker cigod

Go环境安装

我们直接在GO官网下载安装包上传到服务器中,然后解压文件配置一下环境变量。

# 解压go文件
tar zxvf go*.tar.gz # 移动go文件目录
mv go/ /usr/local/

配置环境变量

# 编辑环境配置
vim /etc/profile #GOROOT 路径是软件安装路径
export GOROOT=/usr/local/go #GOPATH 路径是平时我们的工作路径,go项目放置在这个目录下
export GOPATH=$HOME/go #添加到环境变量
export PATH=$PATH:$GOPATH/bin #退出编辑之后重启一下配置文件
. /etc/profile #查看go版本
go version

Fabric的环境搭建

我们可以使用git拉取代码或者直接在Github下载文件

# 进入当前用户文件夹
cd $HOME #创建文件夹
mkdir -p go/src/github.com/hyperledger/ #进入创建的文件夹
cd go/src/github.com/hyperledger/ #Github拉取代码
git clone "https://github.com/hyperledger/fabric.git" #进入项目
cd fabric/ #因为Fabric有很多版本这里我们使用2.0版本,切换一下版本
git checkout release-2.0 #进入scripts下载必备的文件
cd scripts/ #执行这个脚本之后就会自动下载我们需要的文件和Docker镜像
#但是会很慢我的服务器下了一天还失败了
sudo ./bootstrap.sh

补救措施

因为自己一直失败硬着头皮上,我先下载了这个脚本文件看里面具体是做什么东西的,就是下载对应版本的文件和Docker镜像。卡主要就是卡在了下载文件。

#该命令会下载所需的 docker 镜像
./bootstrap.sh -s -b

然后我们直接翻墙下载其他两个文件注意:根据自己查看bootstrap.sh文件得到相应版本号,从而修改地址其中的版本号

https://github.com/hyperledger/fabric-samples/archive/v2.0.0.zip

上面fabric-samples下载之后放入/root/go/src/github.com/hyperledger/fabric/scripts中

#修改fabric-samples文件名
mv fabric-samples-2.0.0 fabric-samples

当下面两个文件下载完之后放入上面fabric-samples目录中进行解压,会生成bin目录下面存放的都是一些生成fabric网络所需的工具

https://github.com/hyperledger/fabric/releases/download/v2.2.0/hyperledger-fabric-linux-amd64-2.0.0.tar.gz

https://github.com/hyperledger/fabric-ca/releases/download/v1.4.7/hyperledger-fabric-ca-linux-amd64-1.4.4.tar.gz

运行Fabric环境

#进入first-network文件夹
cd ~/go/src/github.com/hyperledger/fabric/scripts/fabric-samples/first-network/ #执行命令 这个脚本主要是启动Docker容器镜像,部署通道、节点、证书、链码
./byfn.sh up #执行命令 网络全部关闭
./byfn.sh down

这里启动的时候可能会遇到一个错误,主要是因为Go依赖包下载不了的问题

部署Hyperledger Fabric报错Error: error getting chaincode bytes: failed to calculate dependencies: incomplete package: github.com/hyperledger/fabric-chaincode-go/shim

#go env



换成国内的就可以了

#替换依赖包下载地址
go env -w GOPROXY=https://goproxy.cn
export GOPROXY=https://goproxy.cn

启动脚本的时候出现这个画面说明已经成功了,我们看启动过程的时候可以看到,脚本帮我走了一个完整的流程。

Hyperledger Fabric 部署的更多相关文章

  1. hyperledger fabric部署总结

    之前在有道云笔记上分享过,但想想还是搬到这里来吧,以后统一方便整理自己的知识进入正题.... 之前在调研 hyperledger fabric,其实部署说明官网都有,只是东西都是国外的照着操作也会遇到 ...

  2. HyperLedger Fabric部署与链码解读

    1.Fabric简介 Fabric是超级账本中的一个项目,用以推进区块链技术.和其他区块链类似,它也有一个账本,使用智能合约,且是一个参与者可以分别管理自身交易的系统.它是一个联盟链.Fabric与其 ...

  3. Hyperledger Fabric 部署在多个主机上

    前言 在实验Hyperledger Fabric无排序组织以Raft协议启动多个Orderer服务.TLS组织运行维护Orderer服务中,我们已经完成了使用提供 TLS-CA 服务的 council ...

  4. HyperLedger Fabric 1.1 手动部署单机单节点

    手动部署单机单节点 之前发布过官方的e2e部署方案,由于环境或是访问权限等各种问题,还是有相当一部分码友无法成功跑起来,故此,本章将来一次纯手动操作的集群部署. 主要需要的步骤如下: 1:环境整理 2 ...

  5. 用Java为Hyperledger Fabric(超级账本)开发区块链智能合约链代码之部署与运行示例代码

    部署并运行 Java 链代码示例 您已经定义并启动了本地区块链网络,而且已构建 Java shim 客户端 JAR 并安装到本地 Maven 存储库中,现在已准备好在之前下载的 Hyperledger ...

  6. Centos7 HyperLedger Fabric 1.4 生产环境部署

    Kafka生产环境部署案例采用三个排序(orderer)服务.四个kafka.三个zookeeper和四个节点(peer)组成,共准备八台服务器,每台服务器对应的服务如下所示: kafka案例网络拓扑 ...

  7. 在Ubuntu中部署并测试HyperLedger Fabric 0.6

    最近开始研究区块链,对这个新兴的技术有了基本概念上的了解,所以打算基于一个开源项目做做实验.如果是做数字货币,那么比特币的源代码是最好的了,不过这算是区块链1.0吧,已经有很多改进的竞争币和山寨币出来 ...

  8. Hyperledger fabric 1.3版本的安装部署(原创多机多Orderer部署

    首先,我们在安装前,要考虑一个问题 Hyperledger Fabric,通过指定的节点进行背书授权,才能完成交易的存储 延伸开来,就是为了实现容错.高并发.易扩展,需要zookeeper来选择排序引 ...

  9. HyperLedger/Fabric SDK使用Docker容器镜像快速部署上线

    HyperLedger/Fabric SDK Docker Image 该项目在github上的地址是:https://github.com/aberic/fabric-sdk-container ( ...

随机推荐

  1. git怎么合并远程分支

    一共就五步: 1.把代码clone到本地仓库 git clone https://github.com/573734817pc/shop.git 2.在本地创建dev分支并与远程dev分支对应 git ...

  2. redis入门指南(六)—— 集群

    写在前面 学习<redis入门指南>笔记,结合实践,只记录重要,明确,属于新知的相关内容. 配置集群 1.配置集群,集群解决了单点故障以及单台机器内存上限的问题,使用集群时,只需要将配置文 ...

  3. 最小生成树的java实现

    文章目录 一.概念 二.算法 2.1 Prim算法 2.2 Kruskal算法 笔记来源:中国大学MOOC王道考研 一.概念 连通图:图中任意两点都是连通的,那么图被称作连通图 生成树:连通图包含全部 ...

  4. Python基础知识点:多进程的应用讲解

    前言 本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理. 作者:东哥IT笔记 现在很多CPU都支持多核,甚至是手机都已经开始支持多核 ...

  5. 分布式ID生成服务,真的有必要搞一个

    目录 阐述背景 Leaf snowflake 模式介绍 Leaf segment 模式介绍 Leaf 改造支持RPC 阐述背景 不吹嘘,不夸张,项目中用到ID生成的场景确实挺多.比如业务要做幂等的时候 ...

  6. DJANGO-天天生鲜项目从0到1-008-列表页

    本项目基于B站UP主‘神奇的老黄’的教学视频‘天天生鲜Django项目’,视频讲的非常好,推荐新手观看学习 https://www.bilibili.com/video/BV1vt41147K8?p= ...

  7. Python 简明教程 --- 26,Python 多进程编程

    微信公众号:码农充电站pro 个人主页:https://codeshellme.github.io 学编程最有效的方法是动手敲代码. 目录 1,什么是多进程 我们所写的Python 代码就是一个程序, ...

  8. 用友U8API 8.9-15.0接口开发前提,选好开发方式

    在用友接口开发这条路上,走走停停过了好几年.对于如何选择哪种方式,目前总结几点, 对于开发,目前可以实现的有三种方式       一.是通过用友官方提供的(EAI/API)接口     这种方式的优点 ...

  9. python基础day5_元组

    元祖---只读列表,可循环查询,可切片 儿子不能改,孙子可能可以改.增加(主要看要操作的是属于列表还是元组) tu = (1,2,3,'alex',[2,3,4,'taibai'],'egon') t ...

  10. PHP sleep() 函数

    实例 延迟执行当前脚本 5 秒: <?phpecho date('h:i:s') . "<br>"; //sleep for 5 secondssleep(5); ...