四时宝库

程序员的知识宝库

Docker 还不懂?(dockerl)


Docker 最初是 dotCloud 公司发起的一个公司内部项目,它是基于 dotCloud 公司多年云

服务技术的一次革新,并于 2013 年开源。Docker 项目后来还加入了 Linux 基金会,并称

立推动 开放容器联盟(OCI)。

简单地说,Docker 是一种开源技术,主要用于开发、发布和运行应用程序。通过它,您可

以将应用程序与其底层基础设施隔离开来,从而使软件交付比以往任何时候都要快。

Docker 的主要好处是可以将应用程序打包在"容器"中,这样它们就可以在任何运行

Linux 操作系统(OS)或 Windows 操作系统的系统中移植。虽然容器技术已经存在了一段时

间,但是围绕着 Docker 容器方法大肆宣传,将这种方法作为最流行的容器技术形式之一推

向了主流。

Docker 自开源后受到广泛的关注和讨论,甚至由于 Docker 项目的火爆,在 2013 年底,

dotCloud 公司决定改名为 Docker。

Docker 使用 Google 公司推出的 Go 语言 进行开发实现,基于 Linux 内核的 cgroup,

namespace,以及 OverlayFS 类的 Union FS 等技术,对进程进行封装隔离,属于 操作系

同层面的虚拟化技术。由于隔离的进程独立于宿主和其它的隔离的进程,因此也称其为容

器。最初实现是基于 LXC,从 0.7 版本以后开始去除 LXC,转而使用自行开发的

libcontainer,从 1.11 开始,则进一步演进为使用 runC 和 containerd。

Docker 的亮点在于,一旦将应用程序及其所有依赖关系打包到 Docker 运行容器中,就可

以确保它在任何环境中运行。此外,DevOps 专业人员可以使用 Docker 构建应用程序,并

确保它们不会互相干扰。因此,您可以构建一个安装了不同应用程序的容器,并将其提供给

QA 团队,然后 QA 团队只需要运行该容器来复制您的环境。因此,使用 Docker 可以节省

时间。此外,与使用虚拟机(vm)不同,您不必担心正在使用的平台—— Docker 容器可以

在任何地方工作。

build、ship、run

Build once,Run anywhere


发表评论:

控制面板
您好,欢迎到访网站!
  查看权限
网站分类
最新留言
    友情链接