一、Docker的结构。

Docker命令不清楚的时候可以在命令的最后加上--help

Docker和虚拟机的区别?

虚拟机的实现原理是:先模拟出一套硬件,然后在这基础上跑一个操作系统,然后在这个操作系统上跑应用程序,而Docker内的应用进程是没有内核的,直接用宿主的内核,所有Docker会比虚拟机轻便的多。

基本概念:

总共三个基本概念:①、镜像(image),②、容器(Container),③、仓库(Response)

①    镜像:

镜像是一个特殊的文件系统,它包含程序,库(用到的,用不到的),资源(图片了,文档了…),配置等文件,还包括一下为运行准备的配置参数。重点是镜像不含动态数据,他的内容在构建之后就不会改变。

分层存储:

如果镜像构建之后需要修改,怎么办?一个办法:就是分层处理,最开始的原镜像作为第一层,后续每次需要对镜像进行操作了,就可以再加一层,标记这一层做了什么操作。(这样做的意义就是对镜像进行了修改操作,但实际上原始镜像并没有改变),每增加一层都是在之前一层的基础上进行改变的。

②    容器

容器的定义就好像是面向对象中的类和实例化对象的定义,容器就是镜像实际运行时候的实例。

容器的实质就是进程,但是容器有自己的命名空间,所以他有自己独立的文件系统,网络空间,进程系统,甚至自己的用户ID空间。正因如此容器就好像独立于宿主系统之外的一个系统一样,但实际上他就是一个进程。

镜像是分层存储的,容器也同样如此,以镜像为基层,然后“实例化”出一个容器,就是在上面创建一个当前容器的存储层。这个为当前容器运行读写数据而准备的存储层成为容器存储层。

容器存储层:容器存储层的生命周期和容器一样,容器消亡时,存储层同样消亡,但是数据时很珍贵的,所以容器不要向存储层中读写数据,想要进行读写数据的时候,应当跳过存储层,写入数据卷或者从数据卷中读出,或者绑定宿主电脑的目录。这样容器删除或者重新运行时,数据就不会丢失。

Linux命名空间:就是对内核资源进行分区。

数据卷:是一个供一个或者多个容器使用的特殊目录。

数据卷的特性:

  1. 数据卷可以在容器间共享和重用
  2. 对数据卷修改可以立即生效
  3. 对数据卷更新不会影响镜像
  4. 数据卷默认会一直存在,即使容器被删除

UFS:闪存存储

③    仓库

仓库是用来管理镜像的,一个仓库中会有很多镜像,每个镜像都有一个在这个仓库中独一无二的标签,但是不同仓库之间标签名可以重复,通过<仓库名>:<标签>可以确定一个镜像,例如ubuntu:16.04 就是ubuntu仓库中,标签为16.04的镜像。

Docker的结构(6-13)的更多相关文章

  1. Docker - Docker Engine 结构结构概述

    概述 Docker Engine 结构的简单描述 ref docker 实战 第一本 docker 书 1. docker 版本 1. 版本 Docker Engine - Community 概述 ...

  2. docker存储结构解析

    由于aufs并未并入内核,故而目前只有Ubuntu系统上能够使用aufs作为docker的存储引擎,而其他系统上使用lvm thin provisioning(overlayfs是一个和aufs类似的 ...

  3. centos7用docker安装elasticsearch5.6.13的主从

    说明: 准备2台机器,我这里有192.168.0.170 和 192.168.0.169 192.168.0.170 作为master 192.168.0.169 作为普通node 一.环境1.doc ...

  4. Linux C 程序 预处理,结构体(13)

    C语言预处理,结构体 C语言预处理命令1.宏定义 1.无参数宏 #define 标识符 字符串 #代表本行是编译预处理命名 习惯上,宏定义大写 代替一个字符串,介绍重复书写某个字符串的工作量 有意义的 ...

  5. docker 现实---中小企业docker环境结构(五)

    docker对于中小企业,设定paas他没有足够的能量,没有必要为,个人二手sandbox实用性和小点.我个人觉得,中小企业可以使用docker要规范发展.测试.生产环境. 他画了一个简单的图表: d ...

  6. Docker学习总结(13)——从零开始搭建Jenkins+Docker自动化集成环境

    本文只简单标记下大概的步骤,具体搭建各个部分的细节,还请自行搜索.第一.二部分只是对Jenkins和Docker的简单介绍,熟悉的同学请直接跳到第三部分. 一.关于Jenkins Jenkins简介 ...

  7. Docker Dockerfile 基本结构详解

    dockerfike快速创建自定义的Docker镜像 一.目录 1.docker典型结构 2.指令介绍 3.创建docker镜像 二.结构 DockerFile分为四部分组成:基础镜像信.维护者信息. ...

  8. docker 内部组件结构 -- docker daemon, container,runC

    Docker, Containerd, RunC : 从 Docker 1.11 开始, docker 容器运行已经不是简单地通过 Docker Daemon 来启动, 而是集成了Container, ...

  9. Docker学习笔记

    Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化.容器是完全使用沙箱机制,相互之间不会有任何 ...

随机推荐

  1. 【SQLSERVER】如何设置权限用户

    一.设置权限用户的意义 SQLSERVER 数据库有两个登录方式,一个是 Windows 身份验证方式 ,另一个是 SQLSERVER 身份验证方式(sa用户): 1, Windows 身份验证方式, ...

  2. jquery实现倒计时功能

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  3. 鸡啄米:C++编程之十三学习之类与对象,类的声明,成员的访问控制

    1. 本次学习鸡啄米课程第13篇,把比较重要的学习记录下来,以敦促自己更好的学习.推荐他们的网址学习:http://www.jizhuomi.com/school/c/97.html 2. 在面向过程 ...

  4. 说说NSCache优于NSDictionary的几点

    1.NSCache可以提供自动删减缓存功能,而且保证线程安全,与字典不同,不会拷贝键.2.NSCache可以设置缓存上限,限制对象个数和总缓存开销.定义了删除缓存对象的时机.这个机制只对NSCache ...

  5. AFD运维

    1.afd 网址:https://www.dwd.de/AFD/html-en/contents.html 2.问题:拷贝了一个主机A配置后(HOST_CONFIG主机项),修改为另一个主机B配置:然 ...

  6. tensorflow学习一

    1.用图(graph)来表示计算任务 2.用op(opreation)来表示图中的计算节点,图有默认的计算节点,构建图的过程就是在其基础上加节点. 3.用tensor表示每个op的输入输出数据,可以使 ...

  7. Linux工作环境搭建

    云主机工作环境搭建 网易云主机 需要申请弹性公网IP,不然需要OpenVPN才可以链接. 低于50块钱时,不能进行云主机创建. 更新yum源 cd /etc/yum.repos.d/ mkdir re ...

  8. 「日常训练」Balancing Act(POJ-1655)

    题意与分析 树的重心板子题. 值得考虑的是,重心究竟有哪些优秀的性质? 这里是一些网上能看到的性质: (判定性质)找到一个点,其所有的子树中最大的子树节点数最少(子树可以"倒着看" ...

  9. Siki_Unity_1-8_使用Unity开发2D游戏_PongGame

    Unity 1-8 使用Unity开发2D游戏 PongGame 任务1:演示 http://pan.baidu.com/s/1pKUHsev; up2i 任务2:案例介绍 创建PongGame,注意 ...

  10. python3中使用python2中cmp函数出现错误

    在python2中我们经常会使用cmp函数来比较一些东西,但是在python3中,你再来使用这个函数的时候,发现就报错了,提示找不到这个函数,这是为啥呢? 答:新版的python已经舍弃这种用法 而在 ...