当前位置: 首页 > news >正文

export、import、commit、save、load的区别

目录

    • 1. docker export 和 docker import
    • 2. docker commit
    • 3.docker save 和 docker load

1. docker export 和 docker import

docker export 容器ID/容器Name > xxx.tar 导出一个容器快照

docker import xxx.tar NewImageName:tag 导入一个容器快照到本地镜像库

适用场景:主要用来制作基础镜像,比如从一个ubuntu镜像启动一个容器,然后安装一些软件和进行一些设置后,使用docker export保存为一个基础镜像。然后把这个镜像分发给其他人使用,作为基础的开发环境。(因为export导出的镜像只会保留从镜像运行到export之间对文件系统的修改,所以只适合做基础镜像)

*注意事项:*

①会丢弃历史记录和元数据。

②启动export与import命令导出导入的镜像必须加/bin/bash或者其他/bin/sh,否则会报错。

③docker export 导出的镜像是不带历史记录的,如果原本的镜像有3层,export 之后只会有1层,这一层为从镜像运行到export之间对文件系统的修改。

④可以使用docker history ImageName/ImageID 查看镜像,只有一层(待测试)。

2. docker commit

docker commit 容器ID/容器Name 生成新的镜像名字

选项说明:

-a:提交的镜像作者

-c:使用dockerfile指令来创建镜像

-m:提交时的说明文字

-p:在commit的时候,将正在运行的容器暂停

**适用场景:**主要作用是将配置好的一些容器复用,再生成新的镜像。

注意事项:

commit是合并了save、load、export、import这几个特性的一个综合性的命令,它主要做了:

  • 将container当前的读写层保存下来,保存成一个新层
  • 和镜像的历史层一起合并成一个新的镜像

如果原本的镜像有3层,commit之后就会有4层,最新的一层为从镜像运行到commit之间对文件系统的修改。

3.docker save 和 docker load

docker save -o xxx.tar 镜像名 将指定镜像导出。

docker load -i xxx.tar 导入镜像到本地镜像库

**适用场景:**生产环境没有外网,在本机将镜像打包成tar。拷贝到生产环境,再通过docker push到生产环境本地镜像仓库。

区别:

docker save 保存的是镜像(image)

docker export 保存的是容器(container)

docker load /docker import 载入的时候,两者都会恢复为镜像。

docker load 无法对镜像重命名,docker import 可以对镜像指定新名称。

docker export 比 docker save的包要小,原因是save的是一个分层的文件系统,export导出的只是一层文件系统。

docker commit 和 docker export的区别:

docker commit保存镜像文件系统的历史层,docker export保存从镜像运行到export之间对文件系统的修改的最新一层。

http://www.lryc.cn/news/22865.html

相关文章:

  • 多部委联合举办中国人工智能大赛启动会在厦召开,快商通亮相发言
  • js红宝书学习笔记(1-6章)
  • 第十四届蓝桥杯第三期官方模拟赛C\C++题解
  • API接口安全
  • 2023前端一面vue面试题合集
  • 【Leetcode 剑指Offer】第 5 天 查找算法(中等)
  • 薯条投放适合哪些笔记?小红书薯条投放的3种模式
  • 记录第一个Python练习的过程
  • 【Python】3.3实现多线程
  • 在linux中使用lftp和sftp下载文件(夹)
  • Docker简介与用法
  • 基于海鸥算法改进的DELM分类-附代码
  • linux基本功系列之mount命令实战
  • 力扣Top100题之两数相加(Java解法)
  • 【测试】Python手机自动化测试库uiautomator2和weditor的详细使用
  • 《NFL橄榄球》:旧金山49人·橄榄1号位
  • spark为什么比hadoop快
  • 跨境人都在用的指纹浏览器到底有什么魔力?三分钟带你了解透彻
  • 机器学习概述
  • 企业网站自动生成系统的设计和实现
  • sikuli+eclipse对于安卓app自动化测试的应用
  • react源码分析:babel如何解析jsx
  • 搜广推 WideDeep 与 DeepCrossNetwork (DCN) - 记忆+泛化共存
  • 项目管理工具dhtmlxGantt甘特图入门教程(十四):导出/导入 Excel到 iCal
  • k-means聚类总结
  • char * 和const char *的区别
  • 【剑指offer】JZ3 数组中重复的数字、 JZ4 二维数组中的查找
  • 数据采集 - 笔记
  • 8年测开经验面试28K公司后,吐血整理出高频面试题和答案
  • spring读取properties顺序,重复key问题