答:三步。
其实把应用装进集装箱不是真正的目的,真正的目的是让应用能够通过标准化的创建,配置,部署,不区分底层资源,能够快速运行起来。以一种模块化的方式进行协同、自动化的工作。
这与Docker的理念:Build,Ship,Run Any app,Any where 相一致。
那么如何实现软件的标准(快速)交付呢?
作为北美市场占有率第二的开发者平台 heroku 提出了一个足以改变软件交付的理论,即12-Factor(12要素),同时也为实现Cloud Native App(云原生应用)提供了标准化的定义。
12要素
(原文参考:http://12factor.net/zh_cn/)
好雨如何利用12要素
12要素为IT行业的发展提供了一个标准化的框架,而且也正在被越来越多的软件开发者所认可。以Docker为代表的容器技术为12要素在实现Cloud Native App提供了无限可能。
遵循12要素的应用开发交付,可以大幅降低团队开发的协作和学习成本,让开发效率大幅度提高,实现敏捷开发。同时应用的标准交付,高可用,可迁移等等特性也解放了运维,在本质上真正实现DevOps。
我们基于12要素和Docker等技术,实现了不区分底层资源,并且可以完整支撑SaaS层业务,自动构建、部署、管理的应用管理平台www.goodrain.com。同时,我们也提供可以进行快速部署上线的云原生应用市场app.goodrain.com。
进而帮助企业提升应用交付的效率,并大幅降低应用交付的成本,赋予企业快速交付应用的能力。
上图为架构示意图