目录
一、bootstrap.sh是啥?到底有什么作用?
二、脚本文件中的这三个功能是怎么实现的,该怎么去手动实现避免网络原因浪费时间呢?
1.下载fabric-sample源码
2. 拉取二进制文件
3.拉取docker镜像
小伙伴们在跟着官方示例来安装fabric的时候都是相当烦恼的,curl -sSL https://bit.ly/2ysbOFE | bash -s 这个命令怎么执行都是失败的,搞来搞去也没搞明白到底在干嘛最后白白浪费掉了一天的时间(实际上由于网络的原因)。这篇文章介绍如何快速稳定安装官方示例fabric-samples文件、拉取二进制文件和下载所需要的镜像来代替官方示例的这行代码。
选取自己的版本后就可以看到官方文档我选取的是2.4
这是官方示例的命令。反正我第一次看见很懵逼???到底在干啥啊?
可以去这个地址看看到底是啥东西?
复制这个地址,然后在浏览器打开之后发现这是一个脚本文件
可以复制到自己的虚拟机或者服务器中的文件中,操作如下
复制脚本文件后输入以下指令
cat > bootstrap.sh
然后将刚才复制的内容拷贝上去 (然后 ctrl + c 结束写入)
给脚本文件权限
chmod +x bootstrap.sh
接下来我们再服务器或者刚才的网页中看看这个bootstrap脚本到底是干啥的?
大致可以看出来有这样三个功能:
可以看到脚本中是去克隆github上的源码,这样不仅速度慢而且还有可能链接失败。我们该怎快去解决呢?
嫌弃下面的操作繁琐也可以直接克隆我的仓库 已经为大家准备好了
输入命令
git clone https://gitee.com/guandw/fabric-samples.git
如果已经克隆了我的仓库的fabric-samples下面的这步操作就不用看了。
可以将github上的仓库导入到gitee上这样就不会连接失败而且克隆速度也会提升
然后将脚本里面的github的fabric-samples的URL(下图1示)复制到这里(图二)
图二这样你就可以从自己的仓库克隆了
先来看看脚本文件里面是怎么样操作的
2.1. https://github.com/hyperledger/fabric/releases(根据自己对应版本的脚本文件里的地址来 我的)
选取对应的操作系统,一般就是linux 右键复制链接后,直接用wget命令
wget https://github.com/hyperledger/fabric/releases/download/v2.4.6/hyperledger-fabric-linux-amd64-2.4.6.tar.gz
2.2. https://github.com/hyperledger/fabric-ca/releases(根据自己对应版本的脚本文件里的地址来)
同样右键复制链接 使用wget
wget https://github.com/hyperledger/fabric-ca/releases/download/v1.5.5/hyperledger-fabric-ca-linux-amd64-1.5.5.tar.gz
下载完后查看一下到底下载的啥
2.3.解压这俩文件
tar zvxf xxxxxx(你下载压缩文件)
tar zvxf xxxxxx(你下载压缩文件)
解压后查看生成的工具和配置文件
2.4 讲bin和config移动到你自己fabric-sample目录下
mv bin/ /home/ubuntu/go/src/github.com/hyperledger/fabric-samples
mv config/ /home/ubuntu/go/src/github.com/hyperledger/fabric-samples
配置环境变量
export PATH=$PATH:/home/ubuntu/go/src/github.com/hyperledger/fabric-samples/bin
这时候使用which peer检验一下
看了看脚本文件 似乎不太好自己办。。干脆就用它的脚本吧,但是我们已经手动实现了一部分,该咋办呢?
大概意思就是带上d参数就不再下载docker镜像了、带上参数s就不再下载fabric-sample镜像了。。
那么我们可以使用以下命令
./bootstrap.sh -sb
也就是只执行脚本文件中的下载docker镜像部分的函数
开始系统内没有别的镜像的话下载完后的镜像应该如下
这时候fabric-samples下面也有了bin和config目录了
下载 fabric ⼆进制⽂件、docker 镜像和 fabric 样例的工作也就完成了 是不是很nice呢?