使用docker加载已有镜像安装Hyperledger Fabric v1.1.0

时间:2022-04-10 21:38:51

背景

每次在新的服务器上安装Hyperledger Fabric网络时,通过fabric官方提供的脚本安装时,需要从网络上down下近10G的fabric相关镜像,这个过程是漫长及痛苦的,有时因网络问题,还会前功尽弃。
因此,通过docker在已经安装好fabric的机器上导出相关镜像,并复制镜像到新服务器上,并使用docker进行直接导入,则省时省力很多。

使用docker转存镜像

找一台已经安装好fabric的机器,使用docker images列出所有镜像,如下所示

REPOSITORY                     TAG                 IMAGE ID            CREATED             SIZE
hello-world latest 2cb0d9787c4d weeks ago .85kB
hyperledger/fabric-ca latest 72617b4fa9b4 months ago 299MB
hyperledger/fabric-ca x86_64-1.1. 72617b4fa9b4 months ago 299MB
hyperledger/fabric-tools latest b7bfddf508bc months ago .46GB
hyperledger/fabric-tools x86_64-1.1. b7bfddf508bc months ago .46GB
hyperledger/fabric-orderer latest ce0c810df36a months ago 180MB
hyperledger/fabric-orderer x86_64-1.1. ce0c810df36a months ago 180MB
hyperledger/fabric-peer latest b023f9be0771 months ago 187MB
hyperledger/fabric-peer x86_64-1.1. b023f9be0771 months ago 187MB
hyperledger/fabric-javaenv latest 82098abb1a17 months ago .52GB
hyperledger/fabric-javaenv x86_64-1.1. 82098abb1a17 months ago .52GB
hyperledger/fabric-ccenv latest c8b4909d8d46 months ago .39GB
hyperledger/fabric-ccenv x86_64-1.1. c8b4909d8d46 months ago .39GB
hyperledger/fabric-zookeeper latest 92cbb952b6f8 months ago .39GB
hyperledger/fabric-zookeeper x86_64-0.4. 92cbb952b6f8 months ago .39GB
hyperledger/fabric-kafka latest 554c591b86a8 months ago .4GB
hyperledger/fabric-kafka x86_64-0.4. 554c591b86a8 months ago .4GB
hyperledger/fabric-couchdb latest 7e73c828fc5b months ago .56GB
hyperledger/fabric-couchdb x86_64-0.4. 7e73c828fc5b months ago .56GB
hyperledger/fabric-baseos x86_64-0.4. 220e5cf3fb7f months ago 151MB

假如要导出hyperledger/fabric-ca,TAG为x86_64-1.1.0的镜像至/home/ubuntu/docker_images文件夹下,使用如下命令:

sudo docker save -o /home/ubuntu/images/fabric-ca_x86_64-1.1..tar hyperledger/fabric-ca:x86_64-1.1.

可以使用该方法导出所有需要的镜像

使用docker加载镜像

将导出的镜像移到新服务器上的某个目录中,假设还是/home/ubuntu/docker_images,现在我们可以使用如下命令导入上一步导出的镜像fabric-ca_x86_64-1.1.0.tar

sudo docker load -i /home/ubuntu/images/fabric-ca_x86_64-1.1..tar

可以使用该命令导入所有需要的镜像,可以使用docker images验证镜像是否导入成功

使用已有镜像安装Fabric v1.1.0

* 在$GOPATH/github.com/hyperledger目录下down下fabric和fabric-samples的v1.1.0的源码。

* 将bin文件夹和config文件夹置于$GOPATH/github.com/hyperledger/fabric-samples下。

* 使用docker加载之前已经导出的镜像。

运行已有项目

* 进到fabric-samples/first-network

cd fabric-samples/first-network/

* 生成配置文件

sudo ./byfn.sh -m generate

选择同意,会默认生成mychannel

* 起动项目

sudo ./byfn.sh -m up

* 成功后关闭

sudo ./byfn.sh -m down