要学习hyperledger fabric,首先要了解一点区块链知识,下面博主自己整理的
区块链的一些基础知识(用思维导图展示)
在对区块链有一些基础的了解后,我们进入正题,开始接触hyperledger fabric,下面是我整合网络上对hyperledger fabric的解释后整理出来的(用思维导图展示)
注:部署流程参照:https://github.com/hyperledger/fabric
###先决条件
第一步 下载配置docker;
第二步 下载配置go语言包(版本要在1.9以上)
###下载Fabric Samples源码和二进制文件
使用git
git clone -bmaster https://github.com/hyperledger/fabric-samples.git
cd fabric-samples
git checkout {TAG}
使用git tag命令查看版本列表,根据个人需要将源码切换到对应的版本,本次使用的是1.1版。
git checkout -b v1.1.0
下载二进制文件有两种方式
一、执行代码
curl -sSL https://goo.gl/6wtTN5 | bash -s //fabric和fabric-ca代表你想要的fabric的版本,thirdparty代表第三方镜像的版本
curl -sSL https://goo.gl/6wtTN5 | bash -s 1.1.0 1.1.0 0.4.6
二、直接访问下面的网址
https://github.com/hyperledger/fabric/blob/master/scripts/bootstrap.sh
上面的命令下载并执行一个bash脚本,该脚本将下载并提取设置网络所需的所有特定于平台的二进制文件,并将它们放入上面创建的克隆repo中。它检索四个特定于平台的二进制文件并把他们放在当前工作目录的bin子目录中
该脚本文件会从Docker Hub中下载docker镜像并将其保存到本地的Docker注册表中,标记为“latest”
三、后面就可以部署网,
创建创世区块,
生成通道配置,
在通道中定义Organization,
开启网络,
配置环境变量,
进入CLI容器,
在容器中加入通道,
在通道中加入peer节点,
安装,实例化链码(chaincode)
。。。
最后就可以来用下载来的可执行文件来运行https://github.com/hyperledger/fabric上的example了
在下载和执行脚本文件是一直显示如下错误
根据教程指示,如果出现该错误应该是我的curl的版本太低了,可是在我更新了版本后依然有这个问题,我就采用了教程上的第二种方法,但是依然无济于事
后来我发现了原因
这是争对window环境下必须在克隆库之前执行的操作
我就在网上寻找其他解决方法:
网上普遍采用的方法是
附上网址
https://www.jianshu.com/p/7d720393fea3
就是直接在本地新建文件夹然后把脚本文件的内容复制到本地,最后在手动执行该文件
注意:克隆项目时最好要版本对应,博主部署的版本是1.1
最后就可以开始下载了
注意:如果在后面的操作中发现错误那很可能是在这一步下载的东西不足,可以重新执行那个脚本文件再下载一次就行了
不过紧接着又有问题出现(压死骆驼的最后以可稻草)
后面我就转到Linux环境下来部署了
在虚拟机上部署时,我在相同的地方也遇到了问题,不过这个问题不一样(如下),解决起来也容易多了
对我来说,这个部署难度挺大的,但是最后发现其实步骤也不多,主要难度体现在
一、阅读英文文档不够熟练,导致理解错了一些操作,浪费了很多时间;
二、忽略了一些步骤导致后面的操作出现错误;
三、很久不用git工具,有些生疏了;
四、**部署这个项目的时候还是linux比window好用**
①一切操作都在terminal上进行
②出现的bug比较少,解决起来也比较容易
**所以后面还是要更多地来阅读英文文档,这是一个程序员的基本素养吧**