Docker概述(1)

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 给以上的问题,提出解决方案!

image
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容器技术,也是一种虚拟化技术!

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

到现在,所有的开发人员都必须要会Docker!
入门,精通!

官网及使用文档地址

官网 : https://www.docker.com/
文档地址:https://docs.docker.com/ docker文档超级详细
产库地址:https://hub.docker.com/

Docker 能干嘛

  • 之前的虚拟机技术!
    image
    虚拟机技术缺点:
    1,资源占用十分多
    2,冗余步骤多
    3,启动很慢
  • 容器化技术
    image
    比较Docker 和虚拟机技术的不同:
    传统虚拟机,虚拟出一条硬件,运行一个完整的操作系统,然后在这个系统上安装和运行软件
    容器内的应用直接运行在宿主机的内容,容器是没有自己的内核的,也没有虚拟我们的硬件,所以就轻便了
    每个容器之间是相互隔离的,每个容器内都有一个属于自己的文件系统,互不影响

DevOps(开发,运维)

  • 应用更快速的交付和部署
    传统:一堆帮助文档,安装程序
    Docker:打包镜像发布测试,一键运行

  • 更便捷的升级和扩缩荣
    使用Docker之后,我们部署应用就和搭积木一样!
    项目打包为有一个镜像,扩展 服务器A! 服务器B

  • 更简单的系统运维
    在容器化之后,我们的开发,测试环境都是高度一致的。

  • 更高效的计算资源利用
    Docker 是内核级别的虚拟化,可以再一个物理机上可以运行很多的容器实例!服务器的性能可以被压榨到极致

学习笔记抄录:狂神说JAVA
posted @ 2021-08-05 19:33  咸鱼豆腐  阅读(26)  评论(0编辑  收藏  举报