Docker入门之镜像篇Image

Docker入门教程(镜像)

联合系统文件

镜像的基础是联合系统文件(UnionFS)
这个联合文件系统我们可以简单地理解为把多个目录挂载到一个目录下.
举个栗子:
有A,B,C三个目录.A目录下有a.txt和z.txt文件;B目录下有b.txt和z.txt文件,C目录为空.

|-- A
|   |-- a.txt
|   `-- z.txt
|-- B
|   |-- b.txt
|   `-- z.txt
`-- C

那么联合文件系统就可以实现把a.txt,b,txt,z.txt挂载到C目录下,如下是Linux的mount命令:

sudo mount -t aufs -o dirs=./A:./B none ./C

-t aufs : 使用 AUFS 文件系统;
-o dirs=./A:./B : 把 目录 A 和目录 B 联合在一起 : 后面可以跟读写权限;比如 ./A:rw:
none : 不需要设备;
./C : 将前面的目录联合到 C 目录下;
执行命令后的效果是这样的:

|-- A
|   |-- a.txt
|   `-- z.txt
|-- B
|   |-- b.txt
|   `-- z.txt
`-- C
    |-- a.txt
    |-- b.txt
    `-- z.txt

当我们修改C目录下的a.txt时就相当于修改A目录下的a.txt文件,但是如果修改C目录下的z.txt文件只有A目录下的z.txt文件会被修改,原因是mount在没有指定权限时默认最左边的目录可读写,后面的目录只读.
这样我们可以引申出层的概念;
就是把文件分为只读、以及读写的层;
我们可以一层一层的加东西了;
这就有点 Git 的 commit 的感觉了;
好了;上面这些作为了解即可;
下面进入主题

Docker 常用命令(罗列几个和镜像有关的命令)
  1. 拉取镜像,如果不指定版本则拉取latest版
docker pull ubuntu

也可以指定版本

docker pull ubuntu:19.04
  1. 列出镜像列表
docker image
  1. 删除镜像,注意需要指定imagine id
docker rmi cfcdd3336ca3

或者也可以使用repository + tag

docker rmi ubuntu:latest

早期的 Docker 使用的 AUFS ; 16.04 以后的版本已经换成 overlay2 ;
docker pull 成功拉取的镜像存储在 /var/lib/docker/overlay2 目录;
这里面的目录最终会通过联合文件系统合并成一个 Ubuntu .
转自baijunyao.com

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值