在我看来,这两个工具都用于轻松安装和自动配置应用程序。
然而,我对 Docker 的使用有限,而且根本没有使用过 Ansible。所以我有点困惑。
每当我搜索这两种技术之间的比较时,我都会发现关于如何将这些技术结合使用的详细信息。
在我看来,这两个工具都用于轻松安装和自动配置应用程序。
然而,我对 Docker 的使用有限,而且根本没有使用过 Ansible。所以我有点困惑。
每当我搜索这两种技术之间的比较时,我都会发现关于如何将这些技术结合使用的详细信息。
大多数文章都提到了将Ansible和Docker一起使用的许多原因。
将Ansible视为安装和配置计算机的方式,您可以在未来返回并调整该安装和配置的任何单个步骤,然后将该概念扩展到您能够管理的许多计算机。
Ansible具有优势的一个关键区别在于它不仅可以管理机器的内部,还可以管理其他系统,例如围绕机器的网络、DNS、监控等。
通过Ansible构建多台计算机所需的时间几乎与制作1台计算机所需的时间相同,因为所有50台计算机都将逐步创建。如果要在多个环境之间运行滚动部署,则这个逐步构建过程需要花费时间。
现在想象一下Docker已经构建了其中一台独立的计算机-安装并配置好,并准备在docker系统可用的任何地方部署(现在几乎无处不在)。这里的缺点是您不能管理使docker容器正常工作所需的所有其他方面,如果您没有自动化配置,则长期调整它们并不像听起来那么有趣(因此在这里使用Ansible有帮助)。
一旦创建了初始镜像,从1个到50个Docker计算机的扩展速度比Ansible采取逐步方法要快得多,这在小组滚动部署中尤为明显。
每种方法都有其能力或速度上的缺点。但将它们结合起来可以非常棒。毫无疑问,与您已经阅读过的大多数文章一样,我建议使用Ansible创建(和更新)您的基础Docker容器,然后使用Ansible来管理您需要满足应用程序使用的任何规模的容器的推出。
它们是完全不同的东西。Ansible用于自动化配置和管理机器/容器,而Docker是一个轻量级的Linux容器系统。