运维面试 -- docker save和docker export的区别

docker save和docker export的区别

1、save/load,export/import成对使用。
2、docker save保存的是镜像(image),docker export保存的是容器(container);
	# docker save busybox:latest -o busybox1.tar
	# docker export busybox -o busybox2.tar
	
	可以打开tar文件,看到 busybox1.tar 里面是分层的 --- 镜像
	可以打开tar文件,看到 busybox2.tar 里面是文件系统 --- 容器
3、docker load用来载入镜像包,docker import用来载入容器包,但两者都会恢复为镜像;
	# docker image load -i busybox1.tar
	# cat busybox2.tar | docker import - busybox:latest

	load 不可以加载容器(busybox2.tar)
	export可以导入镜像(busybox1.tar),但是不可用。
4、docker load不能对载入的镜像重命名,而docker import可以为镜像指定新名称。

docker run --link

1. docker run --link的作用
	docker run --link可以用来链接2个容器,使得源容器(被链接的容器)和接收容器(主动去链接的容器)之间可以互相通信,并且接收容器可以获取源容器的一些数据,如源容器的环境变量。

	--link的格式:
	--link <name or id>:alias
	其中,name和id是源容器的name和id,alias是源容器在link下的别名。
	
2. --link下容器间的通信
	源容器和接收容器之间传递数据是通过以下2种方式:

		设置环境变量
		更新/etc/hosts文件
	
	1> 设置环境变量	
	当使用--link时,docker会自动在接收容器内创建基于--link参数的环境变量:
	docker会在接收容器中设置名为<alias>_NAME的环境变量,该环境变量的值为:
	<alias>_NAME=/接收容器名/源容器alias
	
	接收容器还会获取源容器暴露的环境变量,这些变量包括:
	源容器Dockerfile中ENV标签设置的环境变量
	源容器用docker run命令创建,命令中包含的 -e或--env或--env-file设置的环境变量
	
	2> 更新/etc/hosts文件
	docker会将源容器的hosts更新到目标容器的/etc/hosts中:

使用mysql:5.6和	owncloud 镜像,构建一个个人网盘。
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值