Docker两个问题的讨论
docker中的container到底可不可以理解为一个操作系统?
先表明态度,我的理解是,NO。
主机级虚拟化

容器级虚拟化

容器通过Docker的守护进程(Docker daemon)来进行创建,现在docker公司对于Docker daemon进行了重构,现在这个任务被拆解为一个名叫containerd工具来管理容器的生命周期,由LXC(现在是runc)基于库文件来启动创建容器。
简单说明
主机级虚拟化提供应用服务通过虚拟出一个VM来提供服务
容器级虚拟化通过Docker daemon及其工具直接使用宿主机内核来直接提供集装箱一样的服务
这一张网上的图片说的比较生动,在lHOST启动中,从bootfs动bootloader来引导kernel,在Docker中,docker的images通过HOST OS的kernel和LXC程序(现在是RUNC)来启动一个镜像,当镜像成功被启动后,进入rootfs,蓝灰层也会被卸载掉。而rootfs就是linux文件系统。

docker中处于stop的container数据被存储在哪里?
在openstack中,虚拟机在挂起或关闭状态时,所有的资源都会被释放,各个节点将虚拟机的信息记录下来,作为一个模板存储进数据库,当这个虚拟机恢复到启动状态时的过程,就是各个节点通过已经记录下的模板重新创建一个虚拟机。
我的推测,docker采用分层构建镜像的方式,通过只读层来记录容器的状态,例如基于Dockerfile构建容器时,更改Dockerfile中的顺序,容器启动速度明显变慢。说明重新构建。
Docker两个问题的讨论的更多相关文章
- controller 有两种写法,讨论一下两种写法的区别:
controller 有两种写法,讨论一下两种写法的区别: 写法 1: app.controller('myCtrl', function($scope, $location) { $scope.my ...
- ios中@class和 #import,两种方式的讨论
转自:http://blog.sina.com.cn/s/blog_a843a8850101b6a7.html 很多刚开始学习iOS开发的同学可能在看别人的代码的时候会发现有部分#import操作写在 ...
- Docker两种方式进入后台运行的容器
1.在启动容器的时候,有时候我们加了参数-d,这时容器自动进入后台运行.如果我们要进入容器,该怎么办?通常使用docker attach命令和nsenter工具. 2.docker attach是Do ...
- Docker 两键创建 ZeroTier moon 节点
一条命令创建 ZeroTier moon 节点: $ docker run --name zerotier-moon -d -p 9993:9993 -p 9993:9993/udp seedgou/ ...
- Comet OJ 三元组 推导+两个指针+分类讨论
题目:https://www.cometoj.com/contest/59/problem/F?problem_id=2681 题意:给你n个三元组 ai,bi,ci,如果某一对三元组满足 2* ...
- marginStart marginEnd就关于上述两个用法展开讨论
在我还在手动调整两个控件距离时,第一次见识到了marginStart marginEnd两个用法, 但是,只知道它俩能够调整控件距离,但是不知道具体用法,老师也没细说,就这样开启了我对于这两个用法&q ...
- Docker知识-1
[编者的话]本文用图文并茂的方式介绍了容器.镜像的区别和Docker每个命令后面的技术细节,能够很好的帮助读者深入理解Docker. 这篇文章希望能够帮助读者深入理解Docker的命令,还有容器(co ...
- 搭建本地 Registry - 每天5分钟玩转 Docker 容器技术(20)
Docker Hub 虽然非常方便,但还是有些限制,比如: 需要 internet 连接,而且下载和上传速度慢. 上传到 Docker Hub 的镜像任何人都能够访问,虽然可以用私有 reposito ...
- 跨主机网络概述 - 每天5分钟玩转 Docker 容器技术(48)
前面已经学习了 Docker 的几种网络方案:none.host.bridge 和 joined 容器,它们解决了单个 Docker Host 内容器通信的问题.本章的重点则是讨论跨主机容器间通信的方 ...
随机推荐
- Linux之lrzsz命令的安装
Linux之lrzsz命令的安装 1. lrzsz简介 什么是lrzsz? lrzsz是一款在linux里可代替ftp上传和下载的程序.在linux里可代替ftp上传和下载 rz:上传文件到服务器 s ...
- robotframework
常用关键字* Settings * Library Selenium2Library1* Keywords * 打开浏览器 [Arguments] ${url} ${browser} [Documen ...
- 给mysql一百万条数据的表添加索引
直接alter table add index 添加索引,执行一个小时没反应,并且会导致锁表:故放弃该办法,最终解决办法如下: 一.打开mysql 命令行客户端 这里我们那可以看到导出的数据文件所存放 ...
- python2和python3同时存在电脑时,安装包时的的命令行
若是在Python2中使用pip操作时,用pip2或是pip2.7相关命令. 例:给Python2安装selenium,在cmd中输入 pip2 install selenium 或是 pip2.7 ...
- android android studio error
SIMPLE: Error computing //cmake 包含的跨平台头文件或者是源文件路径出错
- 英语单词operand
operand 来源 [root@centos7 ~]# mkdir mkdir: missing operand 缺少操作数,也就是要创建的目录 Try 'mkdir --help' for mo ...
- 输入流之顶层抽象InputStream
该类是所有二进制输入流的的抽象父类 类中主要方法解释说明如下 (1)public abstract int read() throws IOException; 该方法是从输入流中读取下一个字节,返回 ...
- JavaScript中的编码解码
1.URI 统一资源标识符(URI)是一个用于标识某一互联网资源名称的字符串.,该种标识允许用户对任何(包括本地和互联网)的资源通过特定的协议进行交互操作.Web上可用的每种资源 -HTML文档.图像 ...
- python使用开源图片识别第三方库tesseract
详细安装博客:https://blog.csdn.net/luanyongli/article/details/81385284 第一步tesseract-ocr的安装如果不会请参照:https:// ...
- [LightOJ1070]Algebraic Problem
题目:Algebraic Problem 链接:https://vjudge.net/problem/LightOJ-1070 分析: 1)$ a^n+b^n = ( a^{n-1}+b^{n-1} ...