Fabric1.4.3 Docker镜像的导出与载入_Jason_Bourne_的博客-程序员秘密

技术标签: fabric镜像载入  fabric1.4.3  fabric  随笔  fabric镜像导出  docker  

本地环境为 ubuntu16.04,已部署好 fabric1.4.3网络,first-network 运行成功,现需要在服务器上部署 fabric1.4.3,考虑到网络问题在服务器上无法拉取 fabric 所需要的 docker 镜像,只有先将本地虚拟机上的 fabric1.4.3 的 docker 镜像导出,再 copy 到服务器端载入,具体过程如下:

目录

一、导出 fabric docker 镜像

1.错误的导出命令

2.正确的导出命令

二、载入 fabric docker 镜像

三、一些注意事项

1.新版本镜像如何与低版本镜像共存

2.将源码打包

3.通过命令行将源码和镜像文件 copy 到服务器中

4.文件夹重命名


一、导出 fabric docker 镜像

1.错误的导出命令

docker save <IMAGE ID> -o /Path/<REPOSITORY>.tar

此命令会导致加载后镜像的 REPOSITORY 和 TAG 都为<none>,解决办法就是手动打名字和标签:

docker tag <IMAGE ID> <REPOSITORY>:<TAG>

注意:以上命令中的 <IMAGE ID> 为要导出镜像的 id、 Path 为导出镜像存放的位置、<REPOSITORY>为导出镜像的名字(可自定义),<TAG> 为标签.

2.正确的导出命令

docker save <REPOSITORY>:<TAG> -o /Path/<REPOSITORY>.tar

例如将 hyperledge/fabric-ca 镜像导出到 /home/jack/fabric-docker-images 路径下,具体命令为:

docker save hyperledger/fabric-ca:1.4.3 -o /home/jack/docker-images/fabric-ca.tar

 fabric1.4.3 镜像完整的导出命令为:

docker save hyperledger/fabric-tools:1.4.3 -o /home/jack/docker-images/fabric-tools.tar
docker save hyperledger/fabric-ca:1.4.3 -o /home/jack/docker-images/fabric-ca.tar
docker save hyperledger/fabric-ccenv:1.4.3 -o /home/jack/docker-images/fabric-ccenv.tar
docker save hyperledger/fabric-orderer:1.4.3 -o /home/jack/docker-images/fabric-orderer.tar
docker save hyperledger/fabric-peer:1.4.3 -o /home/jack/docker-images/fabric-peer.tar
docker save hyperledger/fabric-javaenv:1.4.3 -o /home/jack/docker-images/fabric-javaenv.tar
docker save hyperledger/fabric-zookeeper:0.4.15 -o /home/jack/docker-images/fabric-zookeeper.tar
docker save hyperledger/fabric-kafka:0.4.15 -o /home/jack/docker-images/fabric-kafka.tar
docker save hyperledger/fabric-couchdb:0.4.15 -o /home/jack/docker-images/fabric-couchdb.tar
docker save hyperledger/fabric-baseos:amd64-0.4.15 -o /home/jack/docker-images/fabric-baseos-amd64.tar

二、载入 fabric docker 镜像

可以通过U盘等移动存储设备将已经导出的镜像 tarcopy 到服务器上,存放目录为 /home/fabric-docker-images1.4.3,具体存放路径视自己习惯而定.

先进入 /home/fabric-docker-images1.4.3 路径下

cd ./home/fabric-docker-images1.4.3

然后执行载入命令:

docker load -i fabric-tools.tar
docker load -i fabric-ca.tar
docker load -i fabric-ccenv.tar
docker load -i fabric-orderer.tar
docker load -i fabric-peer.tar
docker load -i fabric-javaenv.tar
docker load -i fabric-zookeeper.tar
docker load -i fabric-kafka.tar
docker load -i fabric-couchdb.tar
docker load -i fabric-baseos-amd64.tar

三、一些注意事项

1.新版本镜像如何与低版本镜像共存

可能虚拟机中存在低版本的 fabric 镜像,而又不想删除,可以通过将低版本的 TAG 为 latest 的镜像修改为对应版本的版本号,然后删除TAG为 latest 的镜像(这一步应该在 “二” 之前做,也就是在加载新版本镜像之前做)。下面以 fabric1.1.0 版本的 peer 镜像为例。

修改 fabric1.1.0 版本peer镜像的 TAG:

docker tag <IMAGE ID> hyperledger/fabric-peer:1.1.0

删除 TAG 为 latest 的 peer 镜像:

docker rmi hyperledger/fabric-peer:latest

2.将源码打包

进入到 hyperledger 目录下:

cd ./$GOPATH/github.com/hyperledge

执行打包命令:

tar czvf fabric.tar fabric

顺便附上解压命令:

tar zxvf fabric.tar

3.通过命令行将源码和镜像文件 copy 到服务器中

在服务器插入U盘后,执行以下命令查看U盘设备:

./dev/sdb1

 挂载U盘:

sudo fdisk -l
sudo mount /dev/sdb1 /mnt

进入U盘并创建存放fabric源码和镜像的文件夹:

cd /mnt
mkdir fabric_images_1.4.3

 执行 copy 命令(以 peer 镜像为例):

cp fabric-peer.tar ./home/fabric-docker-images1.4.3

4.文件夹重命名

(存在 fabric 低版本源码的情况下,这一步应该在解压 fabric 源码之前做)

cd ./$GOPATH/github.com/hyperledger/
mv fabric fabric1.1.0

 

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/Sun_Hui_/article/details/101293044

智能推荐

Zabbix-架构与部署_CN-FuWei的博客-程序员资料_zabbix架构

一、zabbix结构组成zabbix软件结构组成:1.Zabbix Web GUI: 提供Web界面2.Zabbix Database:提供数据存储功能,专用于存储配置信息,以及采集到的数据3.Zabbix Server: 接收Agent采集数据的核心组件。4.Zabbix Agent: 部署在被监控主机上,用于采集本地数据。5.Zabbix Proxy: 当被监控节点较多时,用于减轻Server压力的组件,也用于分布式监控系统。由Proxy接收数据后统一发送至Server。二、

cisco交换机Telnet配置_weixin_34357436的博客-程序员资料

cisco交换机Telnet配置 switch&gt;en ;第一次密码为空switch#conf t ;进入全局配置模式switch(config)#hostname swa ;设置交换机名swa(config)...

MacOs M1芯片iTerm安装lrzsz_不想上班只想摸鱼的程序员的博客-程序员资料

首先是iterm的下载和lrzsz的安装,这类文章很多,附上一个自认为比较全面的MAC iTerm2 下 使用 lszrz_lightWay的博客-程序员资料_lszrzMAC iTerm2 下 使用 lszrzMAC iTerm2 下 使用 lszrz需要什么什么是 lrzsz为什么需要lszrz具体过程安装lrzsz下载iterm2-zmodem移动到指定位置并赋予可执行权限给iTerm2添加触发器需要什么homebrew包管理工具iTerm2终端命令行wget命令行工具什么是 lrzsz Lrz

Robot Framework学习(8):Web自动化测试_csdn怀的博客-程序员资料

web自动化测试用到的库是Selenium2Library与浏览器相关的关键字1. Open Browser    https://www.baidu.com  ff/chrome    # 打开浏览器注:要想通过不同的浏览打开URL地址,一定要安装浏览器相对应的驱动2. Close Browser        # 关闭浏览器3. Close All Browser   ...

随便推点

ubantu 下载慢的解决方法_试探你的温柔耶的博客-程序员资料

参考此链接:https://zhuanlan.zhihu.com/p/61228593

linux命令---netstat_二两酒馆的博客-程序员资料

概述Netstat 是一款命令行工具,用于显示各种网络相关信息,可用于列出系统上所有的网络套接字连接情况,包括 tcp, udp 以及 unix 套接字,另外它还能列出处于监听状态(即等待接入请求)的套接字应用命令格式根据man手册有很多参数(截图了偷个懒) 参数说明介绍一下常用参数(同样偷懒一下下) Options Details -a 等价参数:- -all,显示所有选项,包括监

背包 DP 背包_melo melo的博客-程序员资料_背包dp

背包 题目 是dp中较为常见的题目分为 0--1 背包 ,完全背包 和多重背包这三类 是越来越深入的首先来介绍一下 0--1背包 ; 首先 0 --1 背包的含义是 给你一个容量位M的背包 然后给你n个物品 ,每个物品具有一定价值和一定重量 会站一定的背包空间答案是在n个物品中那几个 然后使得到的价值最大 首先0 --1入门 首先...

单文件程序库2_yazhouren的博客-程序员资料

Packageshtmk edited this page 5 days ago · 253 revisions Pages 3HomeExplanation of package.jsonPackagesClone this wiki locally Clone in DesktopLis

Android学习——控件ListView的使用_anjiukonghe77852的博客-程序员资料

一、ListView的简单用法首先新建一个ListViewTest项目,并让Android Studio自动创建好活动。然后修改activity_main.xml中的代码,如下: 1 &lt;?xml version="1.0" encoding="utf-8"?&gt; 2 &lt;LinearLayout xmlns:android="http://schemas.a...

推荐文章

热门文章

相关标签