区块链之旅(五)超级账本简介及Git、Docker、Fabric的配置

简介: 超级账本是推动区块链行业应用的开源项目的总称,组织成员可以发起新的区块链项目,加入超级账本项目,但是还是要遵循Hyperledger的生命周期。

Hyperledger超级账本

简介

超级账本是推动区块链行业应用的开源项目的总称,组织成员可以发起新的区块链项目,加入超级账本项目,但是还是要遵循Hyperledger的生命周期。


管理架构

image.png


TSC 负责主导社区开发工作。

董事会是由各个组织和大型企业公司加入,对社区进行管理。

背景

首个面向企业应用场景的开源分布式帐本平台。为透明,公开,去中心化的企业级分布式账本技术提供开源参考实现,并推动区块链和分布式账本项目相关协议、规范和标准的发展。


超级账本作为一个联合项目,由面向不同目的和场景的子项目构成。项目分框架类和工具类两种。


框架类:Burrow、Hyperledger Fabric、Hyperledger Indy、Hyperledger Iroha和Hyperledger Sawtooth等五个项目


工具类:Hyperledger Caliper、Hyperledger Cello、Hyperledger Composer、Hyperledger Explorer、Hyperledger Quilt等五个项目


image.png


Fabric

简介

是最早加入超级账本项目中的顶级项目,定位是面向企业的分布式账本平台,创新地引入权限管理支持,设计上支持可拔插,可拓展,多通道,支持多种共识机制,首个面向联盟链场景地开源项目。


整体逻辑架构

image.png


节点逻辑架构

image.png


交易架构


image.png

区块链账本数据结构


image.png

研发架构

image.png


搭建开发环境

【环境】VM15Pro + ubuntu20.04


Git配置

前置软件Git curl

sudo apt-get install git

在终端配置git

sudo apt-get install git

创建公钥

ssh-keygen -C "your email" -t rsa

image.png

将github上添加ssh key,将.ssh/id_rsa.pub里面的内容全部复制。登陆settings里面选择SSH and GPG keys。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-mWFfigdn-1620982576322)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\image-20210514095148402.png)]


5.将key添加到ssh-agent中

ssh-agent bash
ssh-add ~/.ssh/id_rsa

image.png

6.测试,在终端输入

ssh -T git@github.com

image.png

Docker配置

卸载旧版本

sudo apt-get remove docker docker-engine docker.io containerd runc

image.png

设置仓库


在新主机上首次安装 Docker Engine 之前,需要设置 Docker 仓库。之后,您可以从仓库安装和更新 Docker 。更新 apt 包索引

sudo apt-get update

安装 apt 依赖包,用于通过HTTPS来获取仓库

sudo apt-get install apt-transport-https ca-certificates curl gnupg-agent software-properties-common

添加Docker官方GPG密钥

curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -

image.png

下载稳定性的仓库

sudo add-apt-repository "deb [arch=amd64] https://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable"

安装Docker Engine

更新apt包索引

sudo apt-get update

安装最新版本的 Docker Engine 和 containerd

sudo apt-get install docker-ce docker-ce-cli containerd.io

安装特定版本的 Docker Engine:

apt-cache madison docker-ce

使用第二列的版本号安装指定版本

sudo apt-get install docker-ce=<VERSION_STRING> docker-ce-cli=<VERSION_STRING> containerd.io

笔者直接

sudo apt-get install docker-ce

测试

sudo docker run hello-world

image.png

安装Docker Compose

下载

sudo curl -L "https://github.com/docker/compose/releases/download/1.25.5/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose

下载完之后将可执行权限应用文件中

sudo chmod +x /usr/local/bin/docker-compose

查看版本

docker-compose --version

image.png

脚本化安装Fabric

创建

sudo mkdir -p $GOPATH/src/github.com/hyperledger

下载

cd $GOPATH/src/github.com/hyperledger
sudo git clone https://github.com.cnpmjs.org/hyperledger/fabric.git

查看版本号

image.png


切换到1.4.7版本分支下

sudo git checkout v1.4.7


查看当前分支


git branch -a

image.png

注意一定要有gcc,查看有无gcc,没有的话自行百度安装

gcc --version

Fabric Docker镜像下载

cd $GOPATH/src/github.com/hyperledger/fabric/examples/e2e_cli/
source download-dockerimages.sh -c x86_64-1.0.0 -f x86_64-1.0.0

下载完成

image.png


我们仍然停留在e2e_cli文件夹,这里提供了启动、关闭Fabric网络的自动化脚本。我们要启动Fabric网络,并自动运行Example02 ChainCode的测试,执行一个命令:

./network_setup.sh up

编译生成Fabric公私钥、证书的程序,程序在目录:fabric/release/linux-amd64/bin

基于configtx.yaml生成创世区块和通道相关信息,并保存在channel-artifacts文件夹。

基于crypto-config.yaml生成公私钥和证书信息,并保存在crypto-config文件夹中。

基于docker-compose-cli.yaml启动1Orderer+4Peer+1CLI的Fabric容器。

在CLI启动的时候,会运行scripts/script.sh文件,这个脚本文件包含了创建Channel,加入Channel,安装Example02,运行Example02等功能。


相关文章
|
Kubernetes 关系型数据库 文件存储
手把手教你完成极空间 NAS Docker 镜像加速配置
本教程详细介绍了如何在极空间NAS上配置轩辕镜像加速器,以提升Docker镜像的下载速度与稳定性。内容涵盖账号注册、网络确认、加速器设置及验证方法,并提供常见问题解决方案,帮助用户高效完成容器化应用部署。
4694 1
|
Prometheus 监控 Cloud Native
Prometheus配置docker采集器
本文介绍了如何使用 Prometheus 监控 Docker 容器,涵盖环境准备、配置文件编写及服务启动等步骤。首先确保安装 Docker 和 Docker Compose,接着通过 `docker-compose.yml` 配置 Prometheus 和示例应用。创建 `prometheus.yml` 指定数据采集目标,最后用 `docker-compose up -d` 启动服务。文章还展示了甘特图和类图,帮助理解服务状态与关系,助力提升系统可靠性和可维护性。
689 11
|
开发工具 git 开发者
图解Git——分支简介《Pro Git》
Git 分支是其核心特性之一,允许开发者从主开发线分离工作,避免干扰主线。传统版本控制系统创建分支效率低,而Git的分支创建和切换非常轻量高效。
871 9
|
文件存储 数据安全/隐私保护 开发者
群晖NAS Docker镜像源加速配置教程
本教程介绍了群晖NAS用户如何通过配置轩辕镜像加速服务提升Docker镜像拉取速度。内容包括配置前准备、详细设置步骤及日常使用说明,帮助用户快速完成配置并享受高效稳定的镜像下载体验。
6698 60
|
Docker 容器 文件存储
飞牛fnOS Docker镜像加速配置全攻略
本文介绍了如何在飞牛fnOS中配置Docker镜像加速服务,通过设置轩辕镜像仓库加速器,提升镜像拉取速度与稳定性。内容涵盖配置前准备、加速源设置、首选加速源调整及使用指南,帮助用户高效完成镜像操作。
8167 56
|
Java 分布式数据库 Docker
使用Docker配置并连接HBase的Java API
本流程概要的解释了如何在Docker上配置并启动HBase服务,并通过Java API进行连接和操作表,不涉及具体的业务逻辑处理和数据模型设计,这些因应用而异需由开发者根据实际需求进行实现。
548 13
|
存储 NoSQL MongoDB
Docker中安装MongoDB并配置数据、日志、配置文件持久化。
现在,你有了一个运行在Docker中的MongoDB,它拥有自己的小空间,对高楼大厦的崩塌视而不见(会话丢失和数据不持久化的问题)。这个MongoDB的数据、日志、配置文件都会妥妥地保存在你为它精心准备的地方,天旋地转,它也不会失去一丁点儿宝贵的记忆(即使在容器重启后)。
1809 4
|
数据安全/隐私保护 Docker 容器
docker pull 相关配置
通过本文的介绍,您已经了解了如何通过镜像源配置、登录私有仓库、设置网络代理以及其他优化策略来提升 `docker pull`命令的效率和可靠性。这些配置不仅能够显著加快镜像下载速度,还能确保在不同网络环境下的稳定性。通过合理使用这些配置,您可以更好地管理和优化Docker环境中的镜像拉取操作。
2503 18

热门文章

最新文章