Docker是什么?(转载)
转载的 (恩 作者是它 小黑羊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是什么?(转载)相关推荐
- [转载]Docker的安装配置及使用详解
简介 官网:http://www.docker.com/,点击get started进入下载,目前三个系统的docker容器都有,Windows版需要win10系统,我的是win7系统一开始用的 ...
- Docker容器入门-基本命令的使用
目前容器技术使用相当广泛 不会或者没有使用过容器感觉都不像是个搞技术的 所以,我也就docker相关内容做一个整理 只有不断的学习,才能保持自己的竞争力 什么是容器? 容器是一种轻量级.可移植.自包含 ...
- docker宿主机访问docker容器服务失败
2019独角兽企业重金招聘Python工程师标准>>> 原因: 因为docker的虚拟ip网段是172.17.*.*与局域网的ip网段172.17冲突了,所以有两种方式: 解决方法: ...
- 002.Docker安装部署
一 docker安装-CentOS系统 1.1 docker自动安装脚本 1 root@docker:~# wget -qO- https://get.docker.com/ | sh 2 或-- 3 ...
- Centos Docker安装、升级、卸载
由于在安装Jenkins的过程中遇到了一些问题,网上搜索了下相关的文章,发现是因为之前Centos宿主主机安装的是早起Docker版本,现在打算卸载Docker,然后安装Docker CE版本 卸载老 ...
- 6.10 docker (二) 守护态运行
守护态运行 需要让Docker在后台运行而不是直接把执行命令的结果输出在当前宿主机下.此时,可以通过添加-d参数来实现 如果使用不-d参数运行容器. [root@node ~]# docker run ...
- k8s集群部署一(最新版docker安装)
2019独角兽企业重金招聘Python工程师标准>>> 因为这里面docker跟我们平常用的docker有点不同,需要好好过一遍(本人的三台服务器的IP跟上图不同,现在最新版本的do ...
- 安装Docker和下载images镜像和常用Docker命令
安装Docker和下载images镜像和常用Docker命令 我的是centos7的方法: $sudo yum install docker 直接yum安装contos7使用centos6.5先获取e ...
- 安装docker和docker-compose
环境:centos7,参考官方文档:https://docs.docker.com/insta... 第一步:删除旧版本和相关依赖,运行命令: yum remove docker \docker-cl ...
- 用Docker创建Nexus
步骤如下: 1. 创建持久化目录 $ mkdir /some/dir/nexus-data && chown -R 200 /some/dir/nexus-data 2. 创建镜像并运 ...
最新文章
- RHEL5 下使用syslog-ng构建集中型日志服务器
- 【CyberSecurityLearning 52】Web架构安全分析(web工作机制、HTTP协议)
- 从无到有:阿里巴巴中国站手机客户端项目设计
- Android性能优化-Render篇
- 分享OUTLOOK的定时发送功能
- PNAS:植物香豆素塑造拟南芥合成根系微生物组的组成
- 运维简历怎么写项目描述_实习的简历应该怎么写?
- MATLAB之fprintf
- 李占通他道出了我的心声
- word生成html冗余清理,如何清除WORD冗余格式代码(转)
- EChart饼图文字大小调整
- 跳过wifi认证直接上网
- 【数据结构与算法】五、哈希表和链表
- Date.getyear()、Date.getMonth()、Date.getDay() 已经作废,其他解决办法
- win10升级工具_win10系统易升的卸载技巧
- 常见格式浏览器在线预览
- permgen spac_SPAC是AV初创企业的未来
- 《人月神话》(The Mythical Man-Month)3 外科手术队伍(The Surgical Team)
- 合作快准稳,电子合同助跑“林氏木业”供应链数字化
- 化解冲突;维持和谐!