问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

Docker究竟是什么,为什么这么流行,它的优点和缺陷有哪些

发布网友 发布时间:2022-03-26 10:01

我来回答

4个回答

懂视网 时间:2022-03-26 14:22

docker的真正作用是:

  1、测试

      docker 很适合用于测试发布,将 docker 封装后可以直接提供给测试人员进行运行,不再需要测试人员与运维、开发进行配合,进行环境搭建与部署。

  2、测试数据分离

      在测试中,经常由于测试场景变换,需要修改依赖的数据库数据或者清空变动 memcache、redis中的缓存数据。docker相较于传统的虚拟机,更轻量与方便。可以很容易的将这些数据分离到不同的镜像中,根据不同需要随时进行切换。

  3、开发

      开发人员共同使用同一个 docker 镜像,同时修改的源代码都被挂载到本地磁盘。不再因为环境的不同而造成的不同程序行为而伤透脑筋,同时新人到岗时也能迅速建立开发、编译环境。

  4、paas 云服务

      

      docker 可以支持命令行封装与编程,通过自动加载与服务自发现,可以很方便的将封装于docker镜像中的服务扩展成云服务。类似像 doc 转换预览这样的服务封装于镜像中,根据业务请求的情况随时增加和减少容器的运行数量,随需应变。

热心网友 时间:2022-03-26 11:30

  Docker是什么?

  简单得来说,Docker是一个由GO语言写的程序运行的“容器”(Linux containers, LXCs); 目前云服务的基石是操作系统级别的隔离,在同一台物理服务器上虚拟出多个主机。Docker则实现了一种应用程序级别的隔离; 它改变我们基本的开发、操作单元,由直接操作虚拟主机(VM),转换到操作程序运行的“容器”上来。

  Docker是为开发者和系统管理员设计的,用来发布和运行分布式应用程序的一个开放性平台。由两部分组成:

  Docker Engine: 一个便携式、轻量级的运行环境和包管理器。(注* 单OS vs 单线程,是不是跟NodeJS特别像?)

  Docker Hub: 为创建自动化工作流和分享应用创建的云服务组成。(注* 云端镜像/包管理 vs npm包管理,是不是跟npm特别像?)

  从2013年3月20日,第一个版本的Docker正式发布到 2014年6月Docker 1.0 正式发布,经历了15个月。 虽然发展历程很短,但Docker正在有越来越流行的趋势。

  其实Container技术并非Docker的创新,HeroKu, NodeJitsu 等云服务商都采用了类似这种轻量级的虚拟化技术,但Docker是第一个将这这种Container技术大规模开源并被社区广泛接受的。

  好的部分
  Docker相对于VM虚拟机的优势十分明显,那就是轻量和高性能和便捷性, 以下部分摘自:KVM and Docker LXC Benchmarking with OpenStack

  快
  运行时的性能可以获取极大提升(经典的案例是提升97%)

  管理操作(启动,停止,开始,重启等等) 都是以秒或毫秒为单位的。

  敏捷
  像虚拟机一样敏捷,而且会更便宜,在bare metal(裸机)上布署像点个按钮一样简单。

  灵活
  将应用和系统“容器化”,不添加额外的操作系统,

  轻量
  你会拥有足够的“操作系统”,仅需添加或减小镜像即可。在一台服务器上可以布署100~1000个Containers容器。

  便宜
  开源的,免费的,低成本的。由现代Linux内核支持并驱动。注* 轻量的Container必定可以在一个物理机上开启更多“容器”,注定比VMs要便宜。

  生态系统
  正在越来越受欢迎,只需要看一看Google的趋势就知道了,docker or LXC.

  还有不计其数的社区和第三方应用。

  云支持
  不计其数的云服务提供创建和管理Linux容器框架。

  有关Docker性能方面的优势,还可参考此IBM工程师对性能提升的评测,从各个方面比VMs(OS系统级别虚拟化)都有非常大的提升。转载,仅供参考。

热心网友 时间:2022-03-26 12:48

好多公司都用docker,就是简便轻巧

热心网友 时间:2022-03-26 14:23

docker是一种虚拟机,和其他虚拟机不同在于无界面化和更轻量化,唯一的作用就是同一应用多开,不是同一应用,它的存在价值不大,想想看吧,在应用和底层本来就有一个操作系统,又多层docker,不是浪费资源嘛。
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
Linux系统安装FTP服务器 Linux系统的网络文件共享 建筑的七盏明灯的内容简介 面向对象设计七大原则 简单说 交互设计七大定律 交互设计的“根”——七大定律 交互设计原则和理论2——七大定律 七大设计原则 附近的加油站有哪些 附近的加油站有哪些地方 docker技术有什么用? Docker是什么? docker是干什么的? 华为手机云备份有必要吗 华为手机一定要升级云储空间吗? 关闭华为手机云空间对使用有什么影响 华为手机云备份是需要开启吗 华为手机云备份是需要开启吗? 华为的这个云存储空间有用吗?不用行吗 计算机的软件系统包括哪些内容? 计算机软件系统是由哪两部分组成 计算机的软件系统包括什么和应用软件? 计算机软件是如何分类的?一个计算机软件系统主要由什么组成? 计算机网络的软件系统由哪些部分构成? 什么是软件系统? 计算机硬件及软件系统的组成是什么 计算机软件系统是由什么组成 计算机软件系统主要由哪些部分组成 软件系统主要由什么和什么组成 计算机的软件系统可以分为两类,是哪两类? docker的好处,为什么使用docker来部署服务器 Docker 有什么优势 docker容器对开发人员来说有什么好处 什么是docker docker对运维的作用 docker有哪些有趣的用途? 用Docker之后还需要OpenStack吗 入门运维为什么要学Docker docker和虚拟机的区别 知乎 如果决定使用Docker,是否有必要同时使用OpenStack Docker的主要作用是什么? 虚拟机与Docker有何不同 软件系统的主要功能 简述计算机软件系统的分类及其功能 系统软件的功能之一是什么 计算机软件系统的组成和功能 计算机软件系统的组成和功能? 局域网的硬件系统和软件系统实现什么功能 软件的作用是什么 一个软件系统通常包括哪几个部分,它们的作用是什么?