一、下载源码
fabric分成两个部分:fabric fabric-ca
- 下载fabric git clone https://github.com/hyperledger/fabric.git
- 下载fabric-ca git clone https://github.com/hyperledger/fabric-ca.git
二、编译
1.将源码放入 github.com/hyperledger/fabric 下,执行make all
命令
2.此时如果您没有翻墙工具基本是要没戏了,fabric1.0有很多go的插件在国内是无法访问的,这里推荐一个下载第三方go包的链接http://www.golangtc.com/download/package ,需要的go插件都可以在这里得到
3.查看 fabric/gotools/Makefile,这里面提到的go包都需要从第三方go包下载网站下载,
下载完成的包
4.下载完成后,就要准备修改fabric/Makefile
- 将chaintool映射到容器内,将从网络下载改成拷贝
- 将下载的包映射到容器内
![F{IC%32}QN}S]D0Y3$MIBLM.png](http://upload-images.jianshu.io/upload_images/4860903-a486d768153fe752.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
5.修改fabric/gotools/Makefile 文件,将网络下载都改成拷贝
6.修改fabric/images/javaenv/Dockerfile.in文件,这里gradle-2.12-bin.zip提前下载好,放到本地文件服务器,由于目前我们不需要java chaincode所以屏蔽了javabuild.sh的执行
![TB6)5]62%$KCN_4XJX$2C.png](http://upload-images.jianshu.io/upload_images/4860903-634600fa5637e8fd.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
- 此时
make all
可以正确执行,并生成镜像
- 镜像下载完成就可以改造 docker-compose ,下载大神的docker-compose文件https://github.com/yeasy/docker-compose-files/tree/master/hyperledger/1.0
9.后续过程不属于编译流程不再介绍(fabric-ca的改造过程与fabric类似)