Docker 概述

Docker为什么出现?

软件开发一般大致分为两个环节,第一是本地开发, 第二是服务器部署。如果一个项目本地开发好了,那么放到服务器上,有时候安装环境会非常复杂,也正是因为其复杂性,大公司才会有专门负责项目发布的运维人员。

为了解决这个问题,Docker提出了解决方案!

Docker的核心思想,打包装箱!每个箱子都是互相隔离的,每个箱子都是一个镜像服务,在使用镜像服务前,只需要下载/运行我们发布的镜像即可!

在Docker出来之前,我们都是普遍的使用虚拟机技术!

Docker为什怎么火?本质就是十分的轻巧!

Docker的历史

Docker 公司位于旧金山,由法裔美籍开发者和企业家 Solumon Hykes 创立,其标志如下图所示。

有意思的是,Docker 公司起初是一家名为 dotCloud 的平台即服务(Platform-as-a-Service, PaaS)提供商。

底层技术上,dotCloud 平台利用了 Linux 容器技术。为了方便创建和管理这些容器,dotCloud 开发了一套内部工具,之后被命名为“Docker”。Docker就是这样诞生的!

2013年,dotCloud 的 PaaS 业务并不景气,公司需要寻求新的突破。于是他们聘请了 Ben Golub 作为新的 CEO,将公司重命名为“Docker”,放弃dotCloud PaaS 平台,怀揣着“将 Docker 和容器技术推向全世界”的使命,开启了一段新的征程。

如今 Docker 公司被普遍认为是一家创新型科技公司,据说其市场价值约为 10 亿美元。Docker 公司已经通过多轮融资,吸纳了来自硅谷的几家风投公司的累计超过 2.4 亿美元的投资。

几乎所有的融资都发生在公司更名为“Docker”之后。

聊聊Docker

Docker是由Golang语言开发的,是开源项目!

官网地址:https://www.docker.com/

文档地址:https://docs.docker.com/ (超级详细的)

仓库地址:https://hub.docker.com/

Docker能干嘛?

之前的虚拟机技术:

虚拟机技术的缺点:

  • 硬件资源占用十分多
  • 冗余步骤多
  • 启动很慢

Docker于虚拟机技术的不同:

比较Docker和虚拟机技术的不同:

  • 传统虚拟机,虚拟出一台硬件,运行一个完整的操作系统,然后再在这个系统上安装和运行软件;
  • 容器内的应用直接运行在宿主主机上,容器是没有自己的内核的,也没有虚拟我们的硬件,所以就轻便了;
  • 每个容器之间是互相隔离,每个容器都有一个属于自己的文件系统,互不影响。

Docker的优点:

  • 应用更快速的交付和部署
  • 更便捷的升级和扩缩容
  • 更简单的系统运维
  • 更高效的硬件/软件资源利用

底层原理

一、Docker是怎么工作的?

Docker是一个Client-Server结构的系统,Docker的守护进程运行主机上。通过Socket从客户端访问!

DockerServer接收到Docker-Client的指令,就会执行这个命令!

二、Docker为什么比VM快?

  1. Docker有着比虚拟机更少的抽象层,由于Docker不需要Hypervisor(管理程序)实现硬件资源虚拟化,运行在Docker容器上的程序直接使用的都是实际物理机的硬件资源,因此在Cpu、内存利用率上Docker将会在效率上有明显优势。
  2. Docker利用的是宿主机的内核,而不需要Guest OS,因此,当新建一个容器时,Docker不需要和虚拟机一样重新加载一个操作系统,避免了引导、加载操作系统内核这个比较费时费资源的过程,当新建一个虚拟机时,虚拟机软件需要加载Guest OS,这个新建过程是分钟级别的,而Docker由于直接利用宿主机的操作系统则省略了这个过程,因此新建一个Docker容器只需要几秒钟。
 Docker容器虚拟机(VM)
操作系统与宿主机共享OS宿主机OS上运行宿主机OS
存储大小镜像小,便于存储与传输镜像庞大(vmdk等)
运行性能几乎无额外性能损失操作系统额外的cpu、内存消耗
移植性轻便、灵活、适用于Linux笨重、与虚拟化技术耦合度高
硬件亲和性面向软件开发者面向硬件运维者
描述图鉴

暂无评论

发送评论 编辑评论

|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇