使用现有的Ansible角色创建自定义Docker映像

时间:2018-10-26 12:35:33

标签: linux docker ansible devops

我目前使用Ansible来管理和部署服务器群。

我希望开始将Docker用于某些应用程序,并希望使用与在非Docker化主机上配置的脚本相同的脚本来构建Docker映像。

例如,我们有一个Ansible角色,该角色使用第三方模块构建Nginx,并希望使用相同的角色通过自定义Nginx构建Docker映像。

有什么想法我将如何完成?

2 个答案:

答案 0 :(得分:1)

有一个“ Ansible Container”项目,https://www.ansible.com/integrations/containers/ansible-container。该页面还指向github存储库。

目前尚不清楚它的维护程度如何,但是他们的推理和方法是有意义的。

考虑到您可能需要对两个方面进行一些调整:

  • 容器只能做一件事(微服务)
  • 如何在运行时将配置传递给容器(Docker有一些指导原则,如可能的话,例如环境变量或使用配置文件装载卷)

答案 1 :(得分:0)

这是应该使用docker-systemctl-replacement脚本的完美示例。

已被开发为允许ansible脚本同时针对虚拟机和docker容器。它是在发行版确实切换到systemd时才开发出来的,很难使用容器。当覆盖/ usr / bin / systemctl时,docker容器将看起来足够好,可以使所有旧脚本继续运行,安装rpm / deb并启动并启用“ service:”。

相关问题