区块链技术应用研究与软件开发实践:分布式共享的超级账本部署网络拓扑结构体系
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
分布式共享的超级账本部署
网络结构拓扑体系
1 准备超级账本运行环境
本节介绍多种构建超级账本运行环境的方法,然后介绍如何编译超级账本的镜像文件。
1.1 超级账本运行环境
链码依赖于Docker才能启动运行,超级账本的各节点也推荐运行在Docker容器中,方便系统的运维管理。在开发的过程中,有多种运行方式可以选择:基于Vagrant的运行环境、基于Virtualbox的运行环境和基于Docker的运行环境。
1.基于Vagrant的运行环境Vagrant用一致的工作流程提供了易于配
置、可重复、便携的工作
环境,让开发人员可以快速地创建和销毁虚拟机,帮助团队最大限度地提高生产力和灵活性。图1-1是基于Vagrant的运行环境示意图,Vagrant同时支持Linux、MacOS或Windows等不同的平台,通过相同的配置文件Vagrantfile启动Virtuabox虚拟机。虚拟机的操作系统是Ubuntu 16.04,启动的过程会调用脚本devenv/setup.sh安装所需要的软件并做相应配置,包括安装Docker、Docker Compose、Golang、Node.js、OpenJDK、Gradle等,还会修改系统的文件描述符数等,这样统一用同一套配置运行相同的程序,就不会再有“我的环境有问题”的借口了,也不会存在工作习惯划分出不同阵营的情况,非常适合工作团队合作。图1-1是基于Vagrant的运行环境示意图。
图1-1 基于Vagrant的运行环境示意图
(1)配置文件Vagrantfile 我们先来看一下配置文件Vagrantfile的内容。
SRCMOUNT = "/hyperledger"
LOCALDEV = "/local-dev"
$script = <