【Docker】001-Docker概述

目录

一、Docker概述

1、Docker为什么会出现

2、聊聊Docker的历史

Docker公司:

3、官方资料

4、Docker能做什么

虚拟机技术 :

容器化技术 :

比较虚拟机和Docker的不同 :

DevOps(开发、运维) :

5、Docker的基本组成

结构图:


一、Docker概述

1、Docker为什么会出现

一款产品,开发——上线,两套环境!应用环境,应用配置!

开发人员——运维人员

问题:我在我的电脑上可以运行!到你那不能运行了……版本更新,导致服务不可用!对于运维的考验非常大!

要么开发去干运维,要么运维去学开发!所以,开发即运维

环境配置十分麻烦,每一台机器都要部署环境(集群Redis、ES、Hadoop……)费时费力!

发布一个项目(jar + (Redis、ES、Hadoop……)),项目能否带上环境一块打包安装?

Docker就是干这件事情的!

传统:开发给一个jar包,其他的交给运维来做!

现在:开发、打包、部署、上线,一套走完!

就以上问题,Docker给出了解决方案!

java——jar——打包项目附带运行环境(镜像)——Docker仓库(商店)——运维下载我们发布的镜像直接运行!

Docker:码头工人,思想源自集装箱;

JRE多个应用,端口冲突,原理都是交叉的;

隔离:Docker的核心思想!每个箱子都是相互隔离的!

Docker通过隔离机制,可以将服务器利用到极致!

本质:新技术的出现都是因为存在问题,需要解决!

2、聊聊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”一词来自英国口语,意为码头工人(Dock Worker),即从船上装卸货物的人。

参考文章:Docker简介以及Docker历史

3、官方资料

官网:Empowering App Development for Developers | Docker

文档:Docker Documentation | Docker Documentation(文档超级详细)

仓库:Docker Hub

4、Docker能做什么

虚拟机技术 :

缺点:

1、资源占用多;

2、冗余步骤多;

3、启动慢;

容器化技术 :

容器化技术不是模拟一个完整的操作系统!

互相隔离,互不影响!

比较虚拟机和Docker的不同 :

传统虚拟机技术:虚拟出一套硬件,运行整个操作系统,然后在这个系统上安装和运行软件;

容器技术:直接运行在宿主机的内核中,容器是没有内核的,也没有虚拟硬件,所以就非常轻量级;每个容器之间都是隔离的,互不影响;

DevOps(开发、运维) :

应用更快速地交付、部署:

传统:一堆帮助文档,安装程序;

Docker:一键打包镜像,发布测试,一键运行;

更便捷的升级和扩缩容:

使用了Docker之后,我们部署应用就像搭积木一样;

直接对镜像进行升级!

更简单的系统运维:

使用了Docker之后,开发环境和测试环境高度一致;

更高效的计算资源利用:

1核2G的服务器,可以运行多个容器实例!

服务器的性能可以被压榨到极致!

5、Docker的基本组成

结构图:

镜像(Image):Docker 镜像(Image),就相当于是一个 root 文件系统。比如官方镜像 ubuntu:16.04 就包含了完整的一套 Ubuntu16.04 最小系统的 root 文件系统;

容器(Container):镜像(Image)和容器(Container)的关系,就像是面向对象程序设计中的类和实例一样,镜像是静态的定义,容器是镜像运行时的实体。容器可以被创建、启动、停止、删除、暂停等;

仓库(Repository):仓库可看成一个代码控制中心,用来保存镜像,有公有仓库和私有仓库之分,类似Maven;

对比面向对象思想:镜像相当于类,容器相当于对象;

概念说明
Docker 镜像(Images)Docker 镜像是用于创建 Docker 容器的模板,比如 Ubuntu 系统。
Docker 容器(Container)容器是独立运行的一个或一组应用,是镜像运行时的实体。
Docker 客户端(Client)Docker 客户端通过命令行或者其他工具使用 Docker SDK (Redirecting…) 与 Docker 的守护进程通信。
Docker 主机(Host)一个物理或者虚拟的机器用于执行 Docker 守护进程和容器。
Docker RegistryDocker 仓库用来保存镜像,可以理解为代码控制中的代码仓库。Docker Hub(https://hub.docker.com) 提供了庞大的镜像集合供使用。一个 Docker Registry 中可以包含多个仓库(Repository);每个仓库可以包含多个标签(Tag);每个标签对应一个镜像。通常,一个仓库会包含同一个软件不同版本的镜像,而标签就常用于对应该软件的各个版本。我们可以通过 <仓库名>:<标签> 的格式来指定具体是这个软件哪个版本的镜像。如果不给出标签,将以 latest 作为默认标签。
Docker MachineDocker Machine是一个简化Docker安装的命令行工具,通过一个简单的命令行即可在相应的平台上安装Docker,比如VirtualBox、 Digital Ocean、Microsoft Azure。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值