docker最小的镜像——hello-world

下载镜像  docker pull

docker pull hello-world

查看镜像  docker images

docker images hello-world

运行镜像  docker run

docker基础镜像:自我感觉基础镜像Linux各种版本没有做过任何操作过的镜像

以centos为例

下载centos的镜像:docker pull centos

注:Linux的操作系统是由内核空间kernel和用户空间组成的;

内核空间:kernel,linux启动的时候会加载bootfs文件系统,之后bootfs会被卸载掉;

用户空间的文件系统是rootfs,包括/dev/,/proc,/bin等目录

对于docker的基础镜像来说,底层用的是Host的内核空间kernel,docker只需要提供rootfs。

note:不同的linux发行版的主要区别是rootfs不同

important  note:基础(base)镜像只是在用户空间与发行版一致,内核空间kernel不一定一致,容器的内核版本与底层Host保持一致,容器只能使用Host的内核版本,不能修改

启动并进入centos容器:docker run -it centos

镜像分层:

docker镜像都是通过在基础镜像上增加新的软件服务和配置一层一层构建出来的;这样可以资源共享

可写的容器层(copy-on-write):当容器启动时,新的可写层处于镜像顶部,这一层被称作“容器层”,容器层之下的都叫镜像层。所有对容器的改动--无论是添加,删除,还是修改文                                                        件,都只会发生在容器层

镜像层数量可能会很多,所有的镜像层联合在一起组成一个统一的文件系统

1.添加文件:在容器中添加文件时,新文件会被添加到容器层中

2.读取文件:在容器中读取文件时,会依次从上往下在镜像层中查找,一旦找到,打开并读入内存

3.修改文件:在容器中修改已经存在的文件时,Docker会依次从上往下查找文件,一旦找到,先将其复制到容器层,再进行修改

4.删除文件:在容器中删除文件时,Docker会依次从上层往下层找文件,一旦找到,先在容器层记录删除的操作,然后进行删除。

只有在修改的时候才会复制一份数据,这种特性被称作COPY-on-write

image镜像层的内容始终不会改变,是只读的。所有的增删改都是在容器的自己的空间进行的。

centos7下安装docker(2镜像)的更多相关文章

  1. centos7下安装docker与镜像加速

    1.背景 centos7下安装docker 2.安装 第一步:检查是否为centos7版本 第二步:依赖环境安装 执行如下两个命令: yum -y install gcc yum -y install ...

  2. docker(一) Centos7下安装docker

    docker(一) Centos7下安装dockerdocker(二) windows10下安装dockerdocker(三) 镜像和容器常用命令 docker(四) 使用Dockerfile构建镜像 ...

  3. CentOS7下安装docker(Docker系列1)

    CentOS7下安装docker 系统要求 为了安装docker,需要准备 64-bit的CentOS 7 删除非官方的Docker包 yum的仓库中有一个很旧的Docker包, 现在Docker官方 ...

  4. centos7 下安装docker报错:You could try using...

    搞了台VPS,想要装docker,发现死活装不上,各种报错.之前系统是centos6,发现官方现在已经不支持centos6了,遂升级到centos7,然后还是出现下面这个错误. Error: Pack ...

  5. Linux(centos7)下安装Docker

    近期公司开始推Docker技术.这个系列的文章都是基于CentOS7系统下进行讲解的. Docker简介 Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器 ...

  6. Centos7下安装Docker(详细的新手装逼教程)

    早就听说过Docker,一直不清楚是个啥,今天捣鼓了一下,这里做个记录. --------------------------------------------------------------- ...

  7. Centos7下安装Docker[z]

    [z]https://www.cnblogs.com/qgc1995/p/9553572.html https://yq.aliyun.com/articles/691610?spm=a2c4e.11 ...

  8. Centos7下安装docker(1)

    1.确认系统没安装任何docker相关的安装包 yum remove docker docker-common docker-selinux docker-engine centos7的docker存 ...

  9. Docker学习系列(一)-CentOS7下安装Docker

    CentOS7下Docker的安装 一.操作系统要求 CentOS 7 64位 Kernel 3.10+ 本机系统信息 二.卸载旧版本 如果之前安排过旧版本的Docker,先卸载掉旧版Docker以及 ...

随机推荐

  1. 【JAVA WEB教程】jsp环境搭建+部署网站(eclipse+tomcat)【详细+图文】

    下载tomcat7.X   下载地址为:http://tomcat.apache.org/download-70.cgi 下载完成之后就开始安装   Next   I Agree   选中所有的复选框 ...

  2. openssl rsa/pkey

    openssl系列文章:http://www.cnblogs.com/f-ck-need-u/p/7048359.html openssl rsa和openssl pkey分别是RSA密钥的处理工具和 ...

  3. SpringMVC4集成ehcache

    前言 使用SpringMVC4集成ehcache来缓存服务器数据. 开发环境 SpringMVC4.ehcache2.6. 项目结构 SpringMVC 集成ehcache 1.pom.xml //除 ...

  4. IdentityServer4 中文文档 -5- (简介)支持和咨询选项

    IdentityServer4 中文文档 -5- (简介)支持和咨询选项 原文:http://docs.identityserver.io/en/release/intro/support.html ...

  5. MailBee.NET

    MailBee.NET Objects 是一款为创建.发送.接收以及处理电子邮件而设计的健壮.功能丰富的.NET控件.具备“必需”以及独特的功能,这些控件帮助开发人员简单快速地将复杂的电子邮件功能添加 ...

  6. python取余

    a=-7,b=3, a % b = 2  #取余 a-((a/b)*b) a / b= -3 #整除 int(math.floor(-7/3.0))

  7. 无法打开锁文件 /var/lib/dpkg/lock - open (13: 权限不够)

    比如输入apt-get install eclipse,或者apt-get update 会提示 无法打开锁文件 /var/lib/dpkg/lock - open (13: 权限不够)  无法对状态 ...

  8. ASP.NET Identity 一 (转载)

    来源:http://www.cnblogs.com/r01cn/p/5194257.html 注:本文是[ASP.NET Identity系列教程]的第一篇.本系列教程详细.完整.深入地介绍了微软的A ...

  9. Java坦克大战(四)

    这是我的坦克游戏大战的最后一版,里面添加很多新的功能.这个坦克大战的有很多不足之处,但是对于初学者来说依然是一个很好的练习项目,从中我们可以学习Java基础知识,将知识与项目结合,学习面向对象编程思想 ...

  10. Modular Inverse(zoj3609+欧几里德)

    Modular Inverse Time Limit: 2 Seconds      Memory Limit: 65536 KB The modular modular multiplicative ...