Docker学习笔记(一)

举报
天元浪子 发表于 2021/11/25 16:05:50 2021/11/25
3.4k+ 0 0
【摘要】 Docker是一个开源的应用容器引擎,基于 Go 语言 并遵从 Apache2.0 协议开源。Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口(类似 iPhone 的 app),更重要的是容器性能开销极低。Docker 是一个用于开发,交付和运行应用

Docker学习笔记

概述

什么是Docker

Docker是一个开源的应用容器引擎,基于 Go 语言 并遵从 Apache2.0 协议开源。

Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。

容器是完全使用沙箱机制,相互之间不会有任何接口(类似 iPhone 的 app),更重要的是容器性能开销极低。

Docker 是一个用于开发,交付和运行应用程序的开放平台。借助 Docker,我们可以与管理应用程序相同的方式来管理基础架构。通过利用Docker的方法来快速交付,测试和部署代码,您可以大大减少编写代码和在生产环境中运行代码之间的延迟。

Docker是虚拟机吗

非也非也,Docker是容器引擎,容器并不是虚拟机,它是极其轻量的。将我们自己开发的程序安装到Docker镜像中,Docker镜像就类似于一个py文件,它需要Docker的运行时(类似于Python解释器)运行,被运行的当镜像被运行时,即创建了一个镜像的实例,一个实例就是一个进程。创建实例的过程,并不像虚拟机那样需要经历开机的过程,而是一个短暂到可以忽略的过程。

Docker被禁用了吗

Docker被禁止使用只是广大自媒体夸大宣传了而已,事实上,Docker被禁用的只是被美国列入“实体清单”的企业。再进一步,就算是被列入了“实体清单”,也是可以使用Docker的,因为Docker 从 17.03 版本之后分为 CE(Community Edition: 开源社区版) 和 EE(Enterprise Edition: 闭源企业版),被禁用的也仅仅是企业版,社区版依然可以被使用。

我国国内像阿里、腾讯这样的云厂商,都提供了全套的Docker服务,这些也是不被禁止的。

Docker被弃用了吗

最近Kubernetes(简称k8s)高调宣布将在2021年下半年的版本中彻底移除Docker,引发了社区的热烈讨论。k8s是Google开源的一个容器编排引擎,它支持自动化部署、大规模可伸缩、应用容器化管理,是一个开源的,用于管理云平台中多个主机上的容器化的应用,k8s的目标是让部署容器化的应用简单并且高效,k8s提供了应用部署、规划、更新、维护的一种机制。

在讲k8s弃用Docker前,需要先讲一段反垄断的历史:

在容器领域,Docker无疑是老大,为了防止docker一家独大,docker当年的实现被拆分出了几个标准化的模块,标准化的目的是模块是可被其他实现替换的,不由任何一个厂商控制。docker由 docker-client ,dockerd,containerd,docker-shim,runc组成。其中,最基本的,与容器的运行息息相关的,就是containerd。

k8s与Docker都是以containerd作为运行时,当然,k8s的运行时是可选的,过去,还有一个运行时,叫做Docker,而运行时Docker与k8s的接口并不是完全兼容的,当时,Google开发了一个dockershim的模块,用以实现对运行时Docker的支持。慢慢的,不兼容的地方越来越多,于是Google打算放弃使用dockershim,而是直接与containerd对接。现在的k8s,同时支持Docker和containerd作为容器运行时,2021年下半年,Google将移除所有的dockershim代码,而移除dockershim就意味着不能再使用运行时Docker。

前面我一直在强调运行时Docker,没错,k8s弃用的并不是Docker本身,而是k8s中的运行时Docker。Docker依然是还是那个Docker,可以正常使用,而且,因为镜像的运行时都containerd,使用Docker创建的镜像完全可以在k8s中无障碍的使用。

【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

作者其他文章

评论(0

抱歉,系统识别当前为高风险访问,暂不支持该操作

    全部回复

    上滑加载中

    设置昵称

    在此一键设置昵称,即可参与社区互动!

    *长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

    *长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。