本文已使用 Google Cloud Translation API 自动翻译。
某些文档最好以原文阅读。
Docker 是一种执行操作系统级虚拟化(也称为容器化)的计算机程序。它用于使用容器创建、部署和运行应用程序,这些容器彼此隔离并捆绑了自己的工具、库和配置文件。
Docker 是一种提供操作系统级虚拟化(也称为容器化)的计算机程序。它于 2013 年首次发布,从那时起,它已成为开发人员和系统管理员最流行的工具之一。它用于使用容器创建、部署和运行应用程序。
容器彼此隔离,并捆绑了自己的工具、库和配置文件。这使得在不同环境中部署应用程序变得更加容易,因为不需要为每个环境配置应用程序。 Docker 还允许将应用程序打包到容器中,然后可以在安装了 Docker 的任何其他系统上传输和运行。
Docker 是用 Go 编程语言编写的,并且是开源的。它得到各种云提供商的支持,包括 Amazon Web Services、Microsoft Azure 和 Google Cloud Platform。
Docker 于 2013 年 3 月首次发布。它最初由 Solomon Hykes 作为平台即服务公司 dotCloud 的内部项目开发。 2014年3月,dotCloud更名为Docker, Inc.,开源项目在Apache 2.0许可下发布。
从那时起,Docker 已成为开发人员和系统管理员最流行的工具之一。它已被许多公司采用,包括谷歌、亚马逊、微软和 IBM。
Docker 具有许多特性,使其成为对开发人员和系统管理员具有吸引力的选择。这些包括:
容器化:Docker 允许将应用程序打包到容器中,然后可以在安装了 Docker 的任何其他系统上传输和运行。这使得在不同环境中部署应用程序变得更加容易,因为不需要为每个环境配置应用程序。
安全性:Docker 提供了用户命名空间等安全特性,允许应用程序在隔离的环境中运行。这使得恶意代码更难访问主机系统。
可扩展性:Docker 允许快速轻松地扩展应用程序。它可用于将应用程序部署到多个服务器,从而实现更大的可扩展性。
易用性:Docker 易于使用和理解。它有一个简单的命令行界面,可以很容易地管理容器。
例如,如果你有一个应用程序需要部署到多个服务器,你可以使用 Docker 将应用程序打包到一个容器中。然后,您可以将容器运送到每个服务器并使用 Docker 运行它。这使得将应用程序部署到多个服务器变得更加容易,因为您不需要手动配置每个服务器。
Docker 具有许多优势,包括其易用性、可扩展性和安全性功能。但是,使用 Docker 也有一些缺点。这些包括:
资源使用:Docker 容器可以使用比传统虚拟机更多的系统资源。如果您在单个服务器上运行多个容器,这可能是一个问题。
安全性:Docker 容器彼此隔离,但仍然容易受到攻击。确保容器妥善固定非常重要。
由于使用了容器化技术,Docker 一直备受争议。一些人认为容器化会导致安全风险,因为容器可以用来隐藏恶意代码。其他人则认为,容器化会导致资源使用问题,因为容器可以使用比传统虚拟机更多的系统资源。
Docker 与其他容器化技术相关,例如 LXC、OpenVZ 和 rkt。这些技术与 Docker 类似,因为它们允许将应用程序打包到容器中,并在安装了该技术的任何其他系统上传输和运行。
Docker 还经常与其他技术结合使用,例如 Kubernetes。 Kubernetes 是一个用于管理容器化应用程序的开源系统。它用于自动部署、扩展和管理在容器中运行的应用程序。
Docker 已成为开发人员和系统管理员最流行的工具之一。它被许多公司使用,包括谷歌、亚马逊、微软和 IBM。它是一个开源项目,并得到许多云提供商的支持。