缘起
今天听了一群大大们分享,我万能的前端,终于可以抢运维饭碗了,走别人的路,让别人无路可走,哈哈哈。上述纯属开玩笑,讲正经的,更好的理解是前端通过自动化平台的搭建,打通和运维的墙,让前端能处理更多的事,重前端轻运维,总的来说,我前端还是万能的,哈哈哈!
CI/CD
首先大家要明白一点,何为CI/CD,简单理解就是持续集成和持续交付,而技术的发展是为了提升效率,那么前端角度看,有两种方面就是开发层面的提效和发布部署层面的提效。
开发层面的提效
这个不是重点,一笔带过吧,无非就是开发流程的规范,借助三方工具流程,code review,云端编辑器等等,pro Code和low Code的优雅切换等等。
发布部署层面的提效
这个是重点,我们分两块讲,第一块是一般的方案,第二块是大神级方案。
插一句题外话,大家知道啥是DevOps,其实CI/CD是DevOps概念的一部分。
DevOps
DevOps具体的概念大家网上去查,大致就是开发测试和运维提升工作效率。涉及运维层面的大概是以下,不一定要全部用到。
- 代码管理
- 构建工具
- 自动部署
- 持续集成(CI)
- 配置管理
- 容器
- 编排
一般方案
我们早年是ftp+tomcat+ngnix,暴露年龄啊,这个需要程序员手动操作,错误概率高。随着时间的推移,发布方案的不断进步,时至今日,干货来了,我们有两个普通版本的最佳实践,请看下面
- jekins(ci) + docker(容器) + nexus + ansible(配置管理) + ngnix
- je