Docker-容器如何简化您的Linux开发

作者: Eugene Taylor
创建日期: 16 八月 2021
更新日期: 22 六月 2024
Anonim
docker入门:容器、镜像、仓库介绍
视频: docker入门:容器、镜像、仓库介绍

内容


资料来源:Hafakot / Dreamstime.com

带走:

Docker是一种工具,可让开发人员将Linux应用程序打包到容器中,从而使其易于移植到其他系统。

如果您注意系统管理员和Linux用户所说的话,那么他们真的对Docker感到很兴奋。但是到底是什么呢?为什么你要在乎?谁在使用Docker?本文将帮助解释Docker的吸引力。

什么是Docker?

Docker是一种将应用程序打包到“容器”中的方法,使它们可以在计算机之间移动。它对开发人员和系统管理员具有特别的吸引力,因为它使他们可以随身携带应用程序,并使它们以及所有依赖项仍然可以正常工作。

例如,开发人员可以在个人计算机上使用LAMP(Linux,Apache,MySQL,PHP)测试和构建Web应用程序,然后将这些应用程序推送到包含应用程序和所有组件的容器化版本的测试服务器。最少的Ubuntu安装,并保证它们可以在计算机之间正常工作。这使开发人员可以更轻松地快速测试和推出新应用程序。

Docker提供了高于实际Linux操作系统的抽象级别,但没有成熟的虚拟机的开销。 Docker是两者之间的一种中间立场。它是虚拟机的轻型替代方案,因为虚拟机需要完整的操作系统才能运行,而容器仅使用所需的组件。

秉承开源精神,有许多Docker容器存储库,包括在Docker自己的网站上。它类似于Linux发行版使用的各种软件包管理器。本文后面提到的许多使用Docker的公司都维护着自己的公共存储库。公司还可以创建供内部使用的私有存储库。

Docker在分布式架构中运行,其中守护程序管理容器,而客户端则管理请求。 Docker使用LXC,它可以在Linux内核中直接使用容器。

为什么如此受欢迎?

如果您关注Linux世界,您可能会怀疑有关Docker的炒作是否合理。系统管理员和开发人员如此喜欢Docker的原因是,这使他们的工作变得更加轻松,因为他们可以将代码从不同的机器上推送到整个云服务中。

为什么要使用Docker?

Docker在运行分布式Web应用程序方面无比头痛。如果您的应用程序依赖于特定版本的Apache或MySQL,则可以使用Dockerized版本,而不会干扰系统上的任何其他组件。这意味着,如果您在大型服务器场上运行应用程序,则可以确保所有节点都运行相同的软件。与尝试在大量服务器上管理不同版本的安装相比,这使测试和故障排除变得容易得多。


没有错误,没有压力-在不破坏生活的情况下创建可改变生活的软件的分步指南

当没有人关心软件质量时,您就无法提高编程技能。

谁在使用Docker?

尽管Docker是一个非常新的概念,但它已被Yelp,Spotify,Rackspace和eBay等众多主要技术公司所采用。他们中的许多人已经在Docker网站上向其他人提供了自己的存储库。

甚至微软也正在其Azure云计算平台上支持Docker。令人惊讶的是,考虑到微软过去对Linux的敌意,它还允许用户在其云平台而不是Windows上运行Linux。在这两种情况下,都是Microsoft向客户提供他们想要的东西。

Docker还是虚拟化?

Docker消除了虚拟化的许多开销,但是可能有时需要运行虚拟机。您可能确实需要利用某些操作系统功能。由于Docker依赖于Linux内核功能,因此您确实与Linux平台紧密相连。如果您想使用Windows或BSD功能,最好使用虚拟化。

结论

如果您希望简化开发和测试应用程序以及将它们及其依赖关系从一台机器移到另一台机器,那么Doc​​ker可能是您的理想选择。您不必担心托管服务提供商是否将使用正确版本的Ubuntu或MySQL,因为它们可以作为容器安装在目标系统上。