【发布时间】:2016-02-20 15:33:29
【问题描述】:
或者,换句话说,“图像”胜过“脚本”吗?
我是 Docker 故事的新手,不幸的是,我目前在 CI 尚未成为现实的环境中工作;-P
但是,我在“图像”击败“脚本”方面有以下经验:
如果我想为我的一些同事分发(即使只是出于探索/培训目的)(桌面)应用程序,我必须经历一个漫长而昂贵的过程,从而产生一个安装脚本 用于安装在工作站上的软件。最终结果是 脚本 需要相当长的时间来执行,并且可能会由于狗狗上下文的变化而失败。
所以,我没有那样做。相反,我要求测试 AWS 和 Google Cloud Platform ;-) 然后,我安装了一个带有我想要分发的软件的虚拟机,以及一个无客户端 (HTML5) 远程桌面网关(例如Guacamole),然后我为它拍摄了图像。
那么,当同事需要尝试时,我可以根据图像创建一个新的 VM 实例,它就完成了!创建虚拟机需要时间(
“形象”战胜了“剧本”。
现在,我想在我们的 DevOps 团队中做同样的“捷径”。开发人员可能会交付一个可以运行的容器,而不是一个可以构建的源代码。没有?
而且,为什么不走得更远……为什么不在 PRODUCTION 中对一小部分选定的用户进行(系统地)测试?如果我有可以并行运行的版本化容器 - 稳定的容器和全新的容器 - 如果我只能将有限(选择的)用户子集“重定向”到新的......我还需要这个吗内部测试阶段哪个不真正起作用?
这有意义吗?或者,我错过了什么?
【问题讨论】:
-
到目前为止,它是 Docker 的主要目标。不是“替换”而是简化这一步。
标签: docker continuous-integration