【Docker】1.Docker概述

1.1 Docker为什么会出现

一款产品:开发—上线 两套环境:应用环境,应用配置。
开发–运维。问题:“我在我的电脑上可以运行!” 版本更新,导致服务不可用。对于运维来说,考验就十分大。
环境配置是十分麻烦的,每一个机器都要部署环境(redis、es、hadoop)费时费力。
发布一个项目(jar+(redis、mysql、jdk、es)),项目能不能都带上环境安装打包!
之前在服务器配置一个应用的环境redis、MySQL、jdk、es、hadoop,配置麻烦,不能跨平台。
windows开发,最后发布到linux
传统方式:开发jar,运维来做
现在:开发、打包部署上线,一套流程做完。

java–apk—发布(应用商店)—使用apk—安装即可用!
java—jar(环境)–打包项目带上环境(镜像)—(docker仓库:商店)—下载我们发布的镜像—直接运行即可

docker给以上问题,提出了解决方案!
docker思想就来自于集装箱!
jre–多个应用(端口冲突)–原来是交叉的!
隔离:docker核心思想!打包装箱!每个箱子是互相隔离的。
docker通过隔离机制,可以将服务器利用到极致。

1.2 Docker历史

开源
在容器技术出来之前,我们都是使用虚拟机技术!
虚拟机:在window中装一个vmware,通过这个软件我们开源虚拟出来一台或者多台电脑。笨重!
虚拟机也是属于虚拟化技术,docker容器技术,也是一种 虚拟化技术!

vm:linux centos原生镜像(一个电脑!)隔离,需要开启多个虚拟机 几个g 几分钟
docker:隔离,镜像(最核心的环境4m+jdk+mysql)十分的小巧,运行镜像就可以了。 小巧 几个m kb 秒级启动!

docker是基于go语言开发的,开源项目

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

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

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

1.3 Docker能干嘛

之前的虚拟技术

在这里插入图片描述
kernel:内核
虚拟机技术缺点:
1.资源占用十分多
2.冗余步骤很多
3.启动很慢

容器化技术

容器化技术并不是模拟的一个完整的操作系统
在这里插入图片描述
比较docker和虚拟机技术的不同:

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

DevOps(开发、运维)

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值