Docker学习笔记之docker-save vs docker-export vs docker-commit
之前对这几个command是忘了记,记了混~所以写下笔记以巩固之。
1.docker save
docker save -h Usage: docker save [OPTIONS] IMAGE [IMAGE...] Save one or more images to a tar archive (streamed to STDOUT by default) --help Print usage
-o, --output Write to a file, instead of STDOUT
从接的参数就可以猜到,直接接image,不太可能导出单纯的文件系统(因为镜像本身就是分层存储的)
简单测试一下
docker save -o busybox.tar busybox && mkdir busybox && tar xf busybox.tar -C busybox
tree busybox
busybox
├── 2b8fd9751c4c0f5dd266fcae00707e67a2545ef34f9a29354585f93dac906749.json
├── 374004614a75c2c4afd41a3050b5217e282155eb1eb7b4ce8f22aa9f4b17ee57
│ ├── VERSION
│ ├── json
│ └── layer.tar
├── manifest.json
└── repositories
docker load 与之匹配,将其(带历史地)导入到docker images中
docker load -i busybox.tar
2.docker export
docker export -h
Usage: docker export [OPTIONS] CONTAINER Export a container's filesystem as a tar archive --help Print usage
-o, --output Write to a file, instead of STDOUT
从接的参数猜测,直接接container,多半就是dump rootfs了
栗子测试一下:
docker run --name container -d busybox
docker export -o busybox.tar container && mkdir busybox && tar xf busybox.tar -C busybox
tree busybox -L 1
busybox
├── bin
├── dev
├── etc
├── home
├── proc
├── root
├── sys
├── tmp
├── usr
└── var
docker import 与之匹配
docker import busybox.tar my-busybox:1.0
docker images
# REPOSITORY TAG IMAGE ID CREATED SIZE
# my-busybox 1.0 5bfea374dd5c 3 seconds ago 1.093 MB
注意:docker import后面接的是docker export导出的文件,也就是一个文件系统,所以导入的镜像是不带历史的
使用docker history $image_name 查看镜像,只有一层
3.docker commit
docker commit -h /tmp/pkg_debian (debian) choldrim-pc Usage: docker commit [OPTIONS] CONTAINER [REPOSITORY[:TAG]] Create a new image from a container's changes -a, --author Author (e.g., "John Hannibal Smith <hannibal@a-team.com>")
-c, --change=[] Apply Dockerfile instruction to the created image
--help Print usage
-m, --message Commit message
-p, --pause=true Pause container during commit
commit是合并了save、load、export、import这几个特性的一个综合性的命令,它主要做了:
- 将container当前的读写层保存下来,保存成一个新层
- 和镜像的历史层一起合并成一个新的镜像
如果原本的镜像有3层,commit之后就会有4层,最新的一层为从镜像运行到commit之间对文件系统的修改
docker commit container my-commit-image
docker history my-commit-image
IMAGE CREATED CREATED BY SIZE COMMENT
e86539128c67 5 seconds ago sh 0 B
2b8fd9751c4c 9 weeks ago /bin/sh -c #(nop) CMD ["sh"] 0 B
<missing> 9 weeks ago /bin/sh -c #(nop) ADD file:9ca60502d646bdd815 1.093 MB
参考
Docker学习笔记之docker-save vs docker-export vs docker-commit的更多相关文章
- docker学习笔记(一)—— ubuntu16.04下安装docker
docker学习笔记(一)—— ubuntu16.04下安装docker 原创 2018年03月01日 14:53:00 标签: docker / ubuntu 1682 本文开发环境为Ubuntu ...
- Docker学习笔记之在 Windows 和 Mac 中使用 Docker
0x00 概述 对于开发来说,Windows 和 macOS 是更为常见和常用的系统,所以也很有必要了解在 Windows 和 macOS 中使用 Docker 的方法.很幸运的是,Docker 的官 ...
- docker~学习笔记索引
回到占占推荐博客索引 使用docker也有段时间了,写了不少文章与总结,下面把它整理个目录出来,方便大家去学习与检索! docker~学习笔记索引 docker~linux下的部署和基本命令(2017 ...
- Docker学习笔记总结
Docker学习笔记 https://yeasy.gitbooks.io/docker_practice/content/ 一 环境搭建 Ubuntu安装 .添加软件源的GPG密钥 curl -f ...
- Docker学习笔记 — 配置国内免费registry mirror
Docker学习笔记 — 配置国内免费registry mirror Docker学习笔记 — 配置国内免费registry mirror
- docker学习笔记1 -- 安装和配置
技术资料 docker中文官网:http://www.docker.org.cn/ 中文入门课程:http://www.docker.org.cn/book/docker.html docker学习笔 ...
- Docker学习笔记之一,搭建一个JAVA Tomcat运行环境
Docker学习笔记之一,搭建一个JAVA Tomcat运行环境 前言 Docker旨在提供一种应用程序的自动化部署解决方案,在 Linux 系统上迅速创建一个容器(轻量级虚拟机)并部署和运行应用程序 ...
- Docker学习笔记 - Docker容器内部署redis
Docker学习笔记(2-4)Docker应用实验-redist server 和client的安装使用 一.获取redis容器(含客户端和服务端) 二.创建服务端容器 1.在终端A中运行redis- ...
- docker学习笔记二:常用命令
docker学习笔记二:常用命令 查看docker常用命令 docker --help 返回结果如下: 其中常用的命令如下: 1.image相关操作 展示所有的image: 删除image: rmi ...
- docker学习笔记-1
docker学习笔记一:安装 mac安装docker docker官方文档上有这么一段话: Because the Docker daemon uses Linux-specific kernel f ...
随机推荐
- [vue]通过watch实现数据双向绑定
modal:单向绑定 <head> <meta charset="UTF-8"> <title>test</title> <s ...
- haproxy json 自定义格式日志 并用rsyslog 收集
haproxy的配置 日志投送: global log 127.0.0.1 local1 info 默认端口是udp514 默认日志: defaults log global log-format \ ...
- Ext create动态加载分析
主要涉及到Ext.js Inventory.js ClassManager.js Class.js Loader.js Boot.js 在ClasManager.js的Ext.create中 Ext. ...
- [LeetCode] 153. Find Minimum in Rotated Sorted Array_Medium tag: Binary Search
Suppose an array sorted in ascending order is rotated at some pivot unknown to you beforehand. (i.e. ...
- 邮件收取客户端LumiSoft类库接收yahoo邮件的问题。
//开始循环取邮件数据 m_pImap.Fetch( false, IMAP_t_SeqSet.Parse("1:*"), new IMAP_t_Fetch_i[]{ new IM ...
- Oracle之SQL优化专题02-稳固SQL执行计划的方法
首先构建一个简单的测试用例来实际演示: create table emp as select * from scott.emp; create table dept as select * from ...
- JS怎么控制input框的背景颜色
$("input").css("background-color","red"); 参考:https://zhidao.baidu.com/ ...
- HBase针对性问题汇总
Q: Hbase的rk设计,Hbase优化 a\rowkey:hbase三维存储中的关键(rowkey:行键 ,columnKey(family+quilaty):列键 ,timestamp ...
- MyBatis基础入门《七》查询参数传入对象
MyBatis基础入门<七>查询参数传入对象 描述: 在执行查询语句的时候,传入的参数是一个对象,依据对象的属性,进行检索数据.此时,书写SQL语句中的条件时,其参数需要和对象中的属性保持 ...
- Javascript-购物车结算-案例
<!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8&quo ...