因为未找到mac相关的安装方式,故根据优秀博主的文档以及本人安装、使用的经验整理此文。
brew install go
2> 配置环境变量
vi ~/.bash_profile
export PATH=/usr/local/Cellar/[email protected]/1.13.15/bin:$PATH
source ~/.bash_profile
3> 使用go verison查看环境变量是否生效
xiaomanong@xiaomanongdeMacBook-Pro ~ % go version
go version go1.13.15 darwin/amd64
1> 创建目录并进入
mkdir -p ~/go/src/github.com/hyperledger
cd ~/go/src/github.com/hyperledge
2> 拉取fabric源码
git clone https://github.com/hyperledger/fabric.git
也可通过浏览器打开git地址,自行下载源码。
3> 切换到指定分支
cd ./fabric
查看分支:git branch -a
切换分支: git checkout release-1.4
1> docker配置镜像加速
可参考:Mac下Docker镜像加速
2> 拉取依赖
在 fabric/scripts 目录下找到 bootstrap.sh 脚本,复制到与 fabric 同级目录下,执行脚本(需要有VPN):
./bootstrap.sh 1.4.12 1.4.9 0.4.22
该脚本做的事情:
注意:执行脚本输入的版本号不通,下载的fabric-samples版本就不同,新版本的fabric-samples中没有first-network文件夹,我本地的Fabric网络是通过first-network启动的所以需要用到。
由于我的mac使用的不适用到终端中,所以第三步需要手动在浏览器下载操作:
https://nexus.hyperledger.org/content/repositories/releases/org/hyperledger/fabric/hyperledger-fabric
https://nexus.hyperledger.org/content/repositories/releases/org/hyperledger/fabric-ca/hyperledger-fabric-ca
下载的 hyperledger-fabric-darwin-amd64-1.4.12.tar.gz压缩包内有 bin 和 config 两个文件夹, hyperledger-fabric-ca-darwin-amd64-1.4.9.tar.gz压缩包内有 bin 文件夹,将两个 bin 文件夹内的二进制文件汇总在一个 bin 文件夹内。 最后将 bin 和 config 文件夹复制到 fabric-samples 文件夹内。
Linux系统需要注释下图中执行binariesInstall的这行代码,并重新执行./bootstrap.sh 1.4.12 1.4.9 0.4.22
3> 设置环境变量
启动 fabric-samples/first-network 网络所需二进制文件的默认路径为 fabric-samples/bin,可以将该路径添加入环境变量中:
vim ~/.bash_profile
export PATH=$PATH:/Users/xiaomanong/Documents/tool/fabric/go/src/github.com/hyperledger/fabric-samples/bin
source ~/.bash_profile
测试环境变量是否生效:
xiaomanong@xiaomanongdeMacBook-Pro ~ % fabric-ca-client version
fabric-ca-client:
Version: 1.4.9
Go version: go1.14.10
OS/Arch: darwin/amd64
4> 生成证书
进入first-network目录,使用byfn.sh脚本生成证书
cd ./fabric-samples/first-network/ && ./byfn.sh generate
5> 测试网络
cd ./fabric-samples/first-network/ && ./byfn.sh up
启动时间会比较长,最终出现一个“END”日志表示启动成功,可通过docker ps命令可以查看到节点的启动情况。
注意:该命令会检查网络实体的证书是否生成,如果没有会先生成证书。因此,可以直接执行 ./byfn.sh up 命令,而无需执行 ./byfn.sh generate 命令。
cd ./fabric-samples/first-network/ && ./byfn.sh down
通过docker ps命令可看到各个镜像已停止并销毁。
在最后的volumes中增加自己的项目映射:
- /Users/xxx/Documents/MyProject/czkj/projects:/opt/gopath/src/github.com/hyperledger/fabric/peer/chaincode
- CORE_OPERATIONS_LISTENADDRESS=0.0.0.0:9443
参考:
Hyperledger中文文档
Fabric1.4:运行 first-network 网络
Hyperledger Fabric1.4 安装(大部分流程参考此文档整理)