Published on

编译arm版本fabric镜像

Authors

部分参考。https://blog.csdn.net/u013448768/article/details/97394865

环境

申请的是华为鲲鹏920服务器, aarch64架构,银河麒麟系统(yum包管理)

前期准备

安装 git go docker 等等工具

下载源代码

mkdir -p $GOPATH/src/github.com/hyperledger/
fabric源码
git clone https://github.com/hyperledger/fabric.git
baseimage 基础镜像源码
git clone https://github.com/hyperledger/fabric-baseimage.git
fabric-ca 源码
git clone https://github.com/hyperledger/fabric-ca.git

记得git checkout 切换tag版本号。 baseimage版本号,根据fabric源码里面的makefile写的版本号决定。

编译

编译顺序:

  1. baseimage
  2. fabric源码
  3. fabric-ca

修改Makefile文件,改掉$ARCH相关部分,替换成arm64。遇到一些问题要改dockerfile,给镜像加国内源,配置代理等等。

因为我只编译镜像,基本是用make docker命令

https://github.com/JiangCN/fabric-arm64

最好更改一下resposity的名字,这样可以上传到自己的dockerhub,镜像互相依赖的时候,免得又引用回hyperledger/xxx的镜像 或者 在 peer的环境变量中加入 CORE_CHAINCODE_GOLANG_RUNTIME=jcobcn/fabric-baseos:arm64-0.4.21 http://cw.hubwiz.com/card/c/fabric-env-manual/1/16/3/ 环境变量手册。 https://blog.csdn.net/qq_25870633/article/details/81184781 peer core.yaml配置文件解析