搭建Heperledger Fabric时需要避免的坑

最近了解了区块链方面的知识,在尝试在自己的电脑上搭建 Hyperledger Fabric 时遇见了几个坑。自己踩过了,给各位提个醒,希望大家能少走点弯路。

git clone 速度慢导致失败

如果你 git clone 国外资源时速度只有 10kB/s 左右,那么很容易 clone 到一半就发生异常然后中止。可能的情况有很多,比如,如果你遇见了这种 Error:

1
git error: RPC failed; curl 56 GnuTLS

我想 stack overflow 上已经有比较完整的解答:https://stackoverflow.com/questions/38378914/git-error-rpc-failed-curl-56-gnutls

你或许可以尝试修改 git 的配置信息,比如修改 http 的 postbuffer 大小:

1
$ git config --global http.postBuffer 1048576000

不过这个方法往往是用来解决 post 失败的问题的。

在国内,有科学上网的条件,clone 的速度应当要快得多;要注意的是,如果你已经科学上网了,速度还是很慢,或许你应当检查自己的 http 代理。例如,socks5 的 http 代理设置过程:

1
2
$ git config --global http.proxy 'socks5://127.0.0.1:1080'
$ git config --global https.proxy 'socks5://127.0.0.1:1080'

如果你没有科学上网的条件,而且服务器在国内,那么你或许可以尝试修改 hosts 文件,手动添加几个 IP 映射,再刷新 DNS 缓存。具体的修改方式这里不多介绍,因为可能的方式太多了,建议亲自尝试增加几个 IP 映射看看效果。

Windows 的 hosts 文件目录在这里:C:/Windows/system32/drivers/etc/hosts

*nix 的 hosts 文件目录一般在这里:/etc/hosts

Windows DNS 缓存刷新的命令:ipconfig /flushdns

*nix 命令:sudo systemctl restart nscd


2020.3.23更新

修改 hosts 文件来手动调整 IP 映射的方式有时不太好用,有不少人在网络上分享了更好用的方法,比如将 github 项目克隆到国内的代码管理仓库再下载。具体操作方式可以参考该视频:https://www.bilibili.com/video/BV1aE411p7Cd

用官方提供的脚本文件不能成功下载binaries

在搭建区块链网络的初始阶段,需要下载两个 binaries 文件,分别是 hyperledger-fabric 和 hyperledger-fabric-ca,如果不能科学上网,用官方提供的脚本文件几乎是不能正常下载它们的。这时我们需要手动下载。这里有一个 Hyperledger Fabric 资源的镜像网站:https://nexus.hyperledger.org/content/repositories/releases/org/hyperledger

但这个网站的资源不一定能随时更新到最新,比如我写这篇文章时,它的 hyperledger-fabric 文件最新为 1.4.4 版本,hyperledger-fabric-ca 的最新却只更新到 1.4.3 版本。我建议可以从下载二进制文件的脚本中把需要的文件地址 Copy 下来,然后用自己的下载器进行下载(为了成功运行脚本,你需要把脚本中对应的下载的代码删去),我用的是 Motrix。


2020.3.23更新

目前 nexus 网站也不能正常访问。官网给出的 bootstrap 脚本地址 https://bit.ly/2ysbOFE 同样不能正常访问,但里面的内容和 https://github.com/hyperledger/fabric/blob/master/scripts/bootstrap.sh 是一样的。想要下载 binaries,可以直接访问 https://github.com/hyperledger/fabric/releases/https://github.com/hyperledger/fabric-ca/releases ,选择相应的文件进行下载。下载工具同样可以使用你自己喜欢的工具。

docker拉取镜像速度慢

Docker 拉取镜像速度慢一般不会导致中止,所以如果你有耐心,可以慢慢等,一般来说一天足够拉取所有需要的镜像了。我以前用的是网易的镜像云,发现速度很慢,现在换了阿里的,稍微快了一些。大家也可以多尝试几个镜像源。

(本文定价0元)

本人的博客供免费阅览,读者如果喜欢的话,可以自愿付款。每篇博文下都会有定价作为付款金额参考。付款金额无下限,有上限。对于定价为 a 元的文章,无论你多么喜欢,请不要支付超过 a*10 元。