02-Docker概述

  • Docker为什么会出现? 一款产品: 开发-上线两套环境!应用环境,应用配置!开发—-运维。问题: 我在我的电脑上可以运行!版本更新,导致服务不可用!对于运维来说,考验就十分大?环境配置是十分的麻烦,每一个机器都要部署环境(集群Redis、ES、 Hadoop…. 费时费力。发布一个项目(jar+ ( Redis MySQL jdk ES ) ),项目能不能都带上环境安装打包!之前在服务器配置-个应用的环境Redis MySQL jdk ES Hadoop , 配置超麻烦了,不能够跨平台。Windows ,最后发布到Linux !传统:开发jar,运维来做! 现在:开发打包部署上线, 一套流程做完!

java —- apk-发布(应用商店)—-张三使用apk—安装即可用!java —- jar (环境) —-打包项目带上环境(镜像)—- ( Docker仓库:商店) —-下载我们发布的镜像—-直接运行即可!
Docker给以上的问题,提出了解决方案!
02-Docker概述 - 图1
Docker的思想就来自于集装箱!
JRE -多个应用( 端口冲突) —-原来都是交叉的!
隔离: Docker核心思想!打包装箱!每个箱子是互相隔离的。
水果 生化武器器
Docker通过隔离机制,可以将服务器利用到极致!
本质:所有的技术都是因为出现了-些问题,我们需要去解决,才去学习!

  • Docker的历史: 2010年,几个搞IT的年轻人,就在美国成立了一家公司dotCloud做一些pass的云计算服务! LXC 有关的容器技术!他们将自己的技术(容器化技术)命名就是Docker !Docker刚刚诞生的时候,没有引|起行业的注意! dotCloud ,就活不下去!开源开发源代码!2013年, Docker开源! .Docker越来越多的人发现了docker的优点!灯, Docker每个月都会更新一个版本!2014年4月9日, Docker1.0发布!Docker为什么这么火?十分的轻巧!在容器技术出来之前,我们都是使用虚拟机技术!虚拟机:在window中装-个 Vmware ,通过这个软件我们可以虚拟出来一台或者多台电脑 !笨重!虚拟机也是属于虚拟化技术, Docker容器技术,也是一种虚拟化技术!
  • 聊聊Docker
    Docker是基于Go语言开发的!开源项目!官网:https://www.docker.com/02-Docker概述 - 图2
    文档地址(详细):https://docs.docker.com/ 仓库地址:https://hub.docker.com/ git push pull
    Docker能干嘛?02-Docker概述 - 图3虚拟机技术的缺点:1、资源占用十分多2、冗余步骤多3、启动很慢!

容器化技术:02-Docker概述 - 图4
比较Docker和虚拟机技术的不同:●传统虚拟机,虚拟出一条硬件,运行一个完整的操作系统,然后在这个系统上安装和运行软件●容器内的应用直接运行在宿主机的内容,容器是没有自己的内核的,也没有虚拟我们的硬件,所以就轻便了●每个容器间是互相隔离,每个容器内都有-个属于自己的文件系统,互不影响。

DevOps(开发,运维)应用更快速的交付和部署传统:一堆帮助文档,安装程序Docker :打包镜像发布测试,一键运行更便捷的升级和扩缩容使用了Docker之后,我们部署应用就和搭积木一样!项目打包为一个镜像,扩展服务器A!服务器B更简单的系统运维在容器化之后,我们的开发,测试环境都是高度-致的。更高效的计算资源利用:Docker是内核级别的虚拟化,可以再一个物理机上可以运行很多的容器实例!服务器的性能可以被压榨到极致。