手把手教你走进Hyperledger Fabric

本教程详细介绍了如何在Ubuntu LTS 16.04上安装和配置Hyperledger Fabric,包括搭建开发环境、构建和部署首个网络及示例应用Fabcar,适合初学者快速上手。

现在,Blockchain是业内新的热门话题。但是,寻找良好的资源来学习这项引人入胜的技术并不是一件容易的事。为了让其他人更容易学习,我开始在区块链和分布式分类帐技术(DLT)平台领域开展一系列工作。我将尽力涵盖每一步都需要掌握这些技术。首先,我从Hyperledger Fabric开始。

Hyperledger Fabric是Hyperledger旗下的项目之一。

Hyperledger是一个分布式分类账解决方案的平台,以模块化架构为基础,提供高度的安全性,弹性,灵活性和可扩展性。

让我们从第一步开始一步一步实践:

首先,我们必须学习如何安装Hyperledger Fabric的先决条件:

  • 安装cURL。
  • 安装Go语言。
  • 安装Docker和Docker Compose。
  • 安装Git。
  • 安装Pip
  • 在Ubuntu LTS 16.0.4上安装Hyperledger Fabric

完成先决条件后,我们将继续执行以下操作:

1.在Hyperledger Fabric上构建和部署你的第一个网络
2.在Hyperledger Fabric上构建和部署演示示例Fabcar

我们正在使用Ubuntu LTS 16.04进行本手动教程:

第1步

Ctrl+Alt+T快捷键打开一个终端。

$ sudo su

输入你的密码

$ cd

第2步: 安装 Google golang

$ cd $HOME/ && wget https://storage.googleapis.com/golang/go1.8.1.linux-amd64.tar.gz

$ tar -xvf go1.8.1.linux-amd64.tar.gz

设置go的路径

$ mkdir $HOME/gopath
$ export GOPATH=$HOME/gopath
$ export GOROOT=$HOME/go
$ export PATH=$PATH:$GOROOT/bin
$ go version

第3步: 安装 libltdl-dev

$ apt-get install libltdl-dev

第4步: 安装 docker-­ce

$ wget https://download.docker.com/linux/ubuntu/dists/xenial/pool/stable/amd64/docker­-ce_17.06.0~ce­-0~ubuntu_amd64.deb

$ dpkg ­i docker-­ce_17.06.0~ce-­0~ubuntu_amd64.deb

$ docker -­ -­version

注意:上述方法只是利用Hyperledger Fabric项目发布到Docker Hub的Docker镜像。

$ docker run hello­-world

第5步:安装 python-­pip

$ apt-­get install python­-pip

$ pip ­- -­version

第6步:安装 docker­-compose

$ pip install docker­-compose
$ docker­-compose ­- -­version

第7步:安装 git

$ apt­-get install git
$ git ­-­ -version

第8步:安装 curl

$ apt-­get install curl
$ curl ­- -version

第9步:安装 node.js and npm

$ curl ­sL https://deb.nodesource.com/setup_8.x | sudo ­-E bash ­-

$ node -­ -­version
$ npm ­- -version

第10步:从github克隆fabric示例

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

第11步:进入fabric-samples目录并安装特定于平台的二进制文件

$ cd fabric-­samples
$ curl -­sSL https://goo.gl/byy2Qj | bash -­s 1.0.5

$ docker images

如果一切顺利,你将在屏幕上看到上述输出。

第12步:要查看下载二进制文件,请从终端执行以下操作:

$ cd bin
$ ls

第13步:进入first-network目录

$ cd ../
$ cd first-network
$ ls

第14步:为你的first network生成所需的证书和镜像

$ ./byfn.sh -m generate

第15步:要查看生成证书,请使用以下命令:

$ ls
$ cd crypto-config
$ ls

第16步:使用以下命令创建第一个网络:

$ cd ../
$ ./byfn.sh -m up

使用Hyperledger Fabric创建第一个网络后,您将看到上述消息。

第17步:使用以下命令检查生成的映像和运行容器:

$ docker images
$ docker ps

第18步:关闭创建的网络执行以下命令:

$ ./byfn.sh -m down

第19步:可以使用以下方法检查已删除创建的镜像:

$ docker images

我们使用Hyperledger Fabric成功创建了第一个网络。

现在让我们尝试另一个例子。

第20步:移动到fabcar目录

$ cd ../
$ ls
$ cd fabcar

第21步:使用以下命令安装node模块

$ sudo npm install

第22步:使用以下命令安装grpc模块以与Hyperledger Fabric进行通信:

$ sudo npm install grpc

第23步:通过执行以下命令启动fabcar的Hyperledger Fabric网络:

$ ./startFabric.sh

第24步:要首先注册用户,你必须注册一个管理员,以帮助其他用户注册Fabcar的Hyperledger Fabric网络。

$ node enrollAdmin.js

你可以使用以下命令找到admin的私钥和公钥:

$ ls
$ cd hfc-key-store/
$ ls

第25步:注册用户以查询和调用fabcar网络(As Hyperledger Fabric是一个经过许可的区块链,这就是为什么我们首先必须使用其证书注册用户)

$ cd ../
$ node registerUser.js

第26步:使用以下命令查询Fabcar网络(访问分类帐状态)

$ node query.js

第27步:现在让我们尝试在Hyperledger Fabric之上为我们的Fabcar应用程序提交新记录

$ gedit invoke.js

在上面的文件中进行以下更改以创建新记录:

第28步:现在使用以下命令调用交易。(要在分类帐状态中进行任何更改,我们必须调用函数)

$ Ctrl + c
$ node invoke.js

第29步:查询分类帐以使用以下内容查找你所做的更改

$ node query.js

恭喜所有人成功运行Fabcar演示。在下一部分中,我将介绍这两个例子的技术细节。

敬请期待更多的更新!

希望尽快学习课程的请访问Fabric区块链开发详解,本课程面向初学者,内容即包含Hyperledger Fabric的身份证书与MSP服务、权限策略、通道配置与启动、链码通信接口等核心概念,也包含Fabric网络设计、nodejs链码与应用开发的操作实践,是Nodejs工程师学习Fabric区块链开发的最佳选择。

======================================================================

分享一些以太坊、EOS、比特币等区块链相关的交互式在线编程实战教程:

  • EOS教程,本课程帮助你快速入门EOS区块链去中心化应用的开发,内容涵盖EOS工具链、账户与钱包、发行代币、智能合约开发与部署、使用代码与智能合约交互等核心知识点,最后综合运用各知识点完成一个便签DApp的开发。
  • java以太坊开发教程,主要是针对java和android程序员进行区块链以太坊开发的web3j详解。
  • python以太坊,主要是针对python工程师使用web3.py进行区块链以太坊开发的详解。
  • php以太坊,主要是介绍使用php进行智能合约开发交互,进行账号创建、交易、转账、代币开发以及过滤器和交易等内容。
  • 以太坊入门教程,主要介绍智能合约与dapp应用开发,适合入门。
  • 以太坊开发进阶教程,主要是介绍使用node.js、mongodb、区块链、ipfs实现去中心化电商DApp实战,适合进阶。
  • ERC721以太坊通证实战,课程以一个数字艺术品创作与分享DApp的实战开发为主线,深入讲解以太坊非同质化通证的概念、标准与开发方案。内容包含ERC-721标准的自主实现,讲解OpenZeppelin合约代码库二次开发,实战项目采用Truffle,IPFS,实现了通证以及去中心化的通证交易所。
  • C#以太坊,主要讲解如何使用C#开发基于.Net的以太坊应用,包括账户管理、状态与交易、智能合约开发与交互、过滤器和交易等。
  • java比特币开发教程,本课程面向初学者,内容即涵盖比特币的核心概念,例如区块链存储、去中心化共识机制、密钥与脚本、交易与UTXO等,同时也详细讲解如何在Java代码中集成比特币支持功能,例如创建地址、管理钱包、构造裸交易等,是Java工程师不可多得的比特币开发学习课程。
  • php比特币开发教程,本课程面向初学者,内容即涵盖比特币的核心概念,例如区块链存储、去中心化共识机制、密钥与脚本、交易与UTXO等,同时也详细讲解如何在Php代码中集成比特币支持功能,例如创建地址、管理钱包、构造裸交易等,是Php工程师不可多得的比特币开发学习课程。
  • tendermint区块链开发详解,本课程适合希望使用tendermint进行区块链开发的工程师,课程内容即包括tendermint应用开发模型中的核心概念,例如ABCI接口、默克尔树、多版本状态库等,也包括代币发行等丰富的实操代码,是go语言工程师快速入门区块链开发的最佳选择。

汇智网原创翻译,转载请标明出处。这里是原文手把手教你走进Hyperledger Fabric

Hyperledger Fabric开源区块链分布式账本-学习参考资料合集,共37份。 一、Hyperledger开发资料 0. 票据背书详细介绍 1. 设置组织结构 2. 网络环境 3. 使用Fabric SDK Go 4.0. 链码开发_数据结构 4.1. 链码开发_票据相关请求处理 4.2. 链码开发_背书相关请求处理 4.3. 链码安装及实例化 5. 链码调用 6. 在网络应用程序中进行设置 GoWeb编程 二、Hyperledger技术资料 超级账本Hyperledger白皮书(中文版) 快速带你上手Hyperledger Fabric环境搭建+开发测试 性能基准测试和优化Hyperledger Fabric 区块链平台 An Introduction to Hyperledger Architecture of the Hyperledger Blockchain Fabric Cryptography and Protocols in Hyperledger Fabric FabNet- an Automatic Hyperledger Fabric Network Wizard Hyperledger 白皮书 Hyperledger 源码分析之 Fabric - 整体结构 Hyperledger Blockchain Performance Metrics Hyperledger Fabric - A Distributed Operating System for Permissioned Blockchains Hyperledger Fabric 实验指导 HyperLedger Fabric 在携程区块链平台中的应用实战 Hyperledger Fabric Access Control System for Internet of Things Layer in Blockchain-Based Applications Hyperledger Fabric Blockchain:Secure and Efficient Solution for Electronic Health Records Hyperledger fabric- towards scalable blockchain for business Hyperledger Fabric架构概览 hyperledger-fabricdocs Documentation-release-2.0 HyperLedgerFabric智能合约速成 Integrating Blockchain for Data Sharing and Collaboration Support in Scientific Ecosystem Platform Performance Analysis of Hyperledger Fabric Platforms Performance Benchmarking & Optimizing Hyperledger Fabric Blockchain Platform Performance Modeling & Analysis of Hyperledger Fabric (Permissioned Blockchain Network)-177页 Principle Foundations of Hyperledger Fabric Supporting Private Data on Hyperledger Fabric with Secure Multiparty Computation The privacy protection mechanism of Hyperledger Fabric and its application in supply chain finance
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值