博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
(三) Docker安装使用 镜像
阅读量:7084 次
发布时间:2019-06-28

本文共 1079 字,大约阅读时间需要 3 分钟。

镜像

what is image?
Docker镜像是一个不包含内核而又精简的操作系统
source?
docker.io
daoclod.io 推荐!
加速器:

curl -sSL | sh -s

1
该脚本可以将 –registry-mirror 加入到你的 Docker 配置文件 /etc/docker/daemon.json 中。

work process?

当我们启动一个新的容器时候,Docker会加载只读镜像,并在其上添加一个读写曾,并将镜像中的目录复制一份到/var/lib/docker/aufs/mnt/countainerID 下,我们可以使用chroot进入此目录。如果运行中的容器修改一个已经存在的文件,会将该文件从下面的只读层复写到读写层,只读层的这个文件就会被覆盖,但是还会存在。就这实现了文件系统隔离,当删除读写层的数据将会删除,只读镜像不会变。
镜像文件存储结构?
docker相关文件放在/var/lib/docker目录下
/var/lib/docker/aufs/diff 每层与其父层之间的文件差异
/var/lib/docker/aufs/layers 每层一个文件 记录父层一直到根层之间的ID 大部分文件最后一行都表示继承来自同一层
/var/lib/docker/aufs/mnt 联合挂在点,从只读层复制文件到可读写层的文件系统数据。

在建立镜像时 每次读写操作 都被视作一种增量操作,即在原有的数据层上添加一个锌层;所以一个镜像会由若干个层组成。每次commit就会产生一个新的ID,就相当于在上一层增加了一层,通过这个ID对镜像回滚。

Base 指令

镜像操作
docker images # 显示本地所有的镜像列表

docker import # 从一个tar包创建一个镜像,往往和export结合使用

docker build # 使用Dockerfile创建镜像(推荐)
docker commit # 从容器创建镜像

docker rmi # 删除一个镜像

docker load # 从一个tar包创建一个镜像,和save配合使用

docker save # 将一个镜像保存为一个tar包,带layers和tag信息 (docker save mysql >mysql.tar )
docker history # 显示生成一个镜像的历史命令 docker tag # 为镜像起一个别名

注意:save的话是保存所有的层级 export则会缺失一些构建层级或者历史记录等 迁移最好用save

转载地址:http://wimml.baihongyu.com/

你可能感兴趣的文章
如何在cell内部操作控制器的一些行为
查看>>
第二个spring,第一天
查看>>
UVa 10795
查看>>
String和StringBuffer区别
查看>>
编程需要知道多少数学知识?
查看>>
虚拟空间,malloc
查看>>
PLL详解
查看>>
OSG闪存
查看>>
vim使用命令
查看>>
pymysql操作数据库
查看>>
php include_path设置
查看>>
js常用函数
查看>>
jQuery 复制节点的元素实现添加到购物车功能
查看>>
使用prismjs为网站添加代码高亮功能
查看>>
eclipse项目推送git
查看>>
JavaScript基础之四——选择与循环结构
查看>>
js的event事件对象汇总
查看>>
[AH2017/HNOI2017]礼物
查看>>
大型网站架构演变和知识体系
查看>>
Scut游戏服务器引擎6.0.5.2发布
查看>>