转载的 (恩 作者是它 小黑羊JoinWings )

用冷库来解释docker

谈起Docker,小黑羊禁不住想起小时候在冷藏厂打工的经历.....
为什么冷藏厂会乱入?因为那简直是虚拟化和Docker活生生的例子。
首先你得有个库房>>

这库房敞亮吧,能造库房的包工头很多,比如华为、惠普、Dell、联想、曙光、浪潮之类的。
这些库房有个高大上的名字,叫物理服务器。
鱼呀、肉啊就可以存到库房了吗?当然不行!
你需要低温才可以保鲜!

所以你得有制冷机>>
主流的制冷机有两大系列
Windows制冷机和Linux制冷机

配备了制冷机的库房就可以正常Work啦

最初的冷库就是这个样子
但是问题来了,各种库藏品都很矫情。

怕串味儿怎么办?温度要求不一致怎么办?
SO--
冷库虚拟化来啦>>
有个叫VMware的泥瓦匠想了个办法,他把库房隔成很多叫做“虚拟机”的小房间,“密封”起来,每个房间放一个制冷机,这就是冷库虚拟化。

不怕串味儿,每个小房间的温度独立可控,鱼呀虾呀表示很Happy。
世界清净了,后来还有几个泥瓦匠也学会了库房分隔术,到处给人修冷库。
泥瓦匠Vmware用的砌墙工具叫ESXi
泥瓦匠Citrix用的砌墙工具叫Xen Server
泥瓦匠Microsoft用的砌墙工具叫Hyper-V
还有一些草根泥瓦匠用的工具叫KVM
可是这世界上矫情的人太多,如此完美的方案他们还是吹毛求疵瞎BB:

还能不能想点别的办法?

于是--
冷库Docker出世>>
制冷机Linux是个喜欢动脑筋的好青年,它发明了一种叫“LXC”的“软隔离”技术,冷库分隔成叫做“容器”的小单间,但每个房间不需要单独安装制冷机,只要布些导冷管和温控阀门,这样看起来就达到目的了。
后来有人把“LXC”这种“软隔离”技术发扬光大,用一堆“GO”零件进行改装,可以大幅提高冷库的建设和改进速度,于是Docker横空出世了!

Docker被业内称为容器管理引擎,在小黑羊看来,其实它就是一套给冷库快速建“单间”和铺“导冷管”的装置,源于LXC,但是更智能。

比如,有些“冷库”的使用者不知道储存“冷冻大虾”的单间该建成什么样,“导冷管”该怎么排布。Docker就建了一个“样板间”展览中心,小白们仿照“样板间”在自家冷库里可以原样造一个出来,这种“样板间”被称为“Docker镜像”,展览中心被称为“Docker Hub”。

Docker Hub,你懂滴
所以,用Docker建的冷库是这样子滴。

两类冷库哪家强?
有了Docker是不是虚拟化就歇菜了呢,其实他们各有特色:

上图和Docker官网略有区别,因为当下主流的Bare-metal虚拟化是没有 Host OS这一层的,Docker官网的原图对虚拟化进行了“蓄意”削弱,或者它主要针对KVM这类“半裸”虚拟化吧。

Docker的优势很明显:

占用资源少:共享一个制冷机(OS),各个单间埋导冷管(Bins/Libs)就行了。

部署快:不用建实体墙隔离(多NameSpace),有样板间可参考(镜像服务)

启动快:拧开导冷管的阀门就可以了(共享主机OS Kernel,快速加载),比启动一台“制冷机”方便。

所以对于“臭鱼烂虾”天天要搬进搬出、反复折腾的客户来讲,Docker很“敏捷”!

但是,与虚拟化相比,Docker也存在一些不足,例如安全性:

1、非实体隔离墙,密封性不好,也许会串味儿。

2、导冷管或者冷器阀受损可能殃及整个制冷压缩机。

3、有些未经检疫的样板间会放到展示中心,对下载者造成伤害。

同时,Docker由于对Linux牌的制冷机过于依赖,导致对Windows制冷机无法原生支持。

不过这一点,也许将来不是问题,据说Windows家那位财大气粗的老板有包养Docker的计划。

docker hub 有很多镜像的地方,市场

docker 的构建,自己玩似乎也没有什么意思。一开始还想着用docker + python玩科学计算的。然而并没有什么什么用

sudo docker run -i -t test_docker ubuntu /bin/bash       -i输入 -t打开一个终端  就大概是这个意思吧。一点很重要的是,每个docker命令都要用sudo 前缀

docker rm   ,docker info 等等让我想到很多linux工具都是这用的

查帮助 sudo docker build --help

试着跑了一下应用,可以跑起来。码头工人,docker 对内部容器进行了一个输入输出包装。使用docker engine 命令可以把他们拉起来

对于它就这些吧,无爱

人生苦短,我用docker   ------- 运维工程师

转载于:https://www.cnblogs.com/asreg/p/7244990.html

Docker是什么?(转载)相关推荐

  1. [转载]Docker的安装配置及使用详解

    简介    官网:http://www.docker.com/,点击get started进入下载,目前三个系统的docker容器都有,Windows版需要win10系统,我的是win7系统一开始用的 ...

  2. Docker容器入门-基本命令的使用

    目前容器技术使用相当广泛 不会或者没有使用过容器感觉都不像是个搞技术的 所以,我也就docker相关内容做一个整理 只有不断的学习,才能保持自己的竞争力 什么是容器? 容器是一种轻量级.可移植.自包含 ...

  3. docker宿主机访问docker容器服务失败

    2019独角兽企业重金招聘Python工程师标准>>> 原因: 因为docker的虚拟ip网段是172.17.*.*与局域网的ip网段172.17冲突了,所以有两种方式: 解决方法: ...

  4. 002.Docker安装部署

    一 docker安装-CentOS系统 1.1 docker自动安装脚本 1 root@docker:~# wget -qO- https://get.docker.com/ | sh 2 或-- 3 ...

  5. Centos Docker安装、升级、卸载

    由于在安装Jenkins的过程中遇到了一些问题,网上搜索了下相关的文章,发现是因为之前Centos宿主主机安装的是早起Docker版本,现在打算卸载Docker,然后安装Docker CE版本 卸载老 ...

  6. 6.10 docker (二) 守护态运行

    守护态运行 需要让Docker在后台运行而不是直接把执行命令的结果输出在当前宿主机下.此时,可以通过添加-d参数来实现 如果使用不-d参数运行容器. [root@node ~]# docker run ...

  7. k8s集群部署一(最新版docker安装)

    2019独角兽企业重金招聘Python工程师标准>>> 因为这里面docker跟我们平常用的docker有点不同,需要好好过一遍(本人的三台服务器的IP跟上图不同,现在最新版本的do ...

  8. 安装Docker和下载images镜像和常用Docker命令

    安装Docker和下载images镜像和常用Docker命令 我的是centos7的方法: $sudo yum install docker 直接yum安装contos7使用centos6.5先获取e ...

  9. 安装docker和docker-compose

    环境:centos7,参考官方文档:https://docs.docker.com/insta... 第一步:删除旧版本和相关依赖,运行命令: yum remove docker \docker-cl ...

  10. 用Docker创建Nexus

    步骤如下: 1. 创建持久化目录 $ mkdir /some/dir/nexus-data && chown -R 200 /some/dir/nexus-data 2. 创建镜像并运 ...

最新文章

  1. RHEL5 下使用syslog-ng构建集中型日志服务器
  2. 【CyberSecurityLearning 52】Web架构安全分析(web工作机制、HTTP协议)
  3. 从无到有:阿里巴巴中国站手机客户端项目设计
  4. Android性能优化-Render篇
  5. 分享OUTLOOK的定时发送功能
  6. PNAS:植物香豆素塑造拟南芥合成根系微生物组的组成
  7. 运维简历怎么写项目描述_实习的简历应该怎么写?
  8. MATLAB之fprintf
  9. 李占通他道出了我的心声
  10. word生成html冗余清理,如何清除WORD冗余格式代码(转)
  11. EChart饼图文字大小调整
  12. 跳过wifi认证直接上网
  13. 【数据结构与算法】五、哈希表和链表
  14. Date.getyear()、Date.getMonth()、Date.getDay() 已经作废,其他解决办法
  15. win10升级工具_win10系统易升的卸载技巧
  16. 常见格式浏览器在线预览
  17. permgen spac_SPAC是AV初创企业的未来
  18. 《人月神话》(The Mythical Man-Month)3 外科手术队伍(The Surgical Team)
  19. 合作快准稳,电子合同助跑“林氏木业”供应链数字化
  20. 化解冲突;维持和谐!

热门文章

  1. 大红喜庆版UI猜灯谜小程序源码/猜字谜微信小程序源码
  2. element Tooltip背景颜色样式修改
  3. 打印机显示已暂停不能打印解决方法
  4. Linux Charger IC 驱动移植总结
  5. Docker设置代理上网
  6. C++提取文件名与提取XML文件
  7. HTML--关于form表单//邮箱登录
  8. win10任务栏怎样居中win10任务栏居中设定教程
  9. 通信通知 Communication Notifications 的实现 (iOS 15+)
  10. 鸿蒙系统网络连接设置ip,修改本地连接的TCP/IP属性设置