主机 服务
server1 GitLab (至少需要4G内存) 一般需要独立的服务器。下面教程用GitHub
server2 Jenkins+Docker
CICD - 持续集成与持续交付
持续集成 CI
什么是持续集成?(CI:Continuous Integration)
软件开发中,集成是一个很可能发生未知错误的过程。持续集成是一种软件开发实践,希望团队中的成员频繁
提交代码到代码仓库,且每次提交都能通过自动化测试进行验证,从而使问题尽早暴露和解决。
持续集成的好处是什么?
持续集成可以使问题尽早暴露,从而也降低了解决问题的难度,正如老马所说,持续集成无法消除bug,但却
能大大降低修复的难度和时间。
持续交付 CD
什么是持续交付?(CD:Continuous Delivery)
持续交付是持续集成的扩展,指的是将通过自动化测试的软件部署到产品环境。持续交付的本质是把每个构建
成功的应用更新交付给用户使用。在持续交付的世界里,我们对完成的定义不是测试完成,而是交付到客户手
中。这里需要注意的是,CD代表持续交付(Continuous Delivery)而不是持续部署(Continuous Deploy),因
为部署也包括部署到测试环境,而持续交付代表的是功能的上线,交付给用户使用。
持续交付的好处是什么?
持续交付的好处在于快速获取用户反馈;适应市场变化和商业策略的变化。开发团队保证每次提交的修改都是
可上线的修改,那么决定何时上线,上线哪部分功能则完全由产品业务团队决定。
虽然持续交付有显著的优点,但也有不成立的时候,比如对于嵌入式系统的开发,往往需要软硬件的配合。
基于Docker+Jenkins+Gitlab搭建持续集成环境
一、搭建GitLab服务器