CI/CD架构
CI/CD架构简介
CI/CD:持续集成/持续发布
continuous integration/continuous deployment
CI/CD主要运用了jenkins进行对后端的开发代码的拉取,经过自动编译,打包,测试后,自动发布到tomcat服务器上,实现自动化的产品上线。
CI/CD顶梁柱jenkins简介
jenkins的功能是将获取的代码进行统一的编译,打包,发布到tomcat等容器上。
其操作界面友好,由java语言编写,需要安装jdk。
jenkins特性
- 易安装,仅需要一个war包和jdk。
- 图形化页面,配置简单。
- 分布式构建:能够连接多台机器构建/测试。
- 支持第三方插件:可以通过第三方插件来扩展功能,进行二次开发。
jenkins工作流程
- step1:开发人员将代码上传到版本库
- step2:jenkins通过配置从版本库拉取代码文件
- step3:jenkins通过maven插件,将代码编译测试
- step4:step3无误后通过ssh插件传递到tomcat服务器上。
- step5:应用服务器通过shell脚本自动实现产品上线。
部署jenkins
- 版本库部署,获取代码。(略)
- 安获取jdk包,maven包,tomcat包,jenkins.war包,并解压到/usr/local下,改成简单的名字。(略)
war包地址:http://updates.jenkins-ci.org/download/war/ - 改写jdk和码maven的环境变量,将maven移到java目录下
[root@jenkins ~]# vi /etc/profile
JAVA_HOME=/usr/local/java
MAVEN_HOME=/usr/local/java/maven
PATH=$PATH:$JAVA_HOME/bin:$MAVEN_HOME/bin
export PATH USER LOGNAME MAIL HOSTNAME HISTSIZE HISTCONTROL JAVA_HOME MAVEN_HOME
[root@jenkins ~]# source /etc/profile
[root@jenkins ~]# java -version
java version "1.8.0_191"
Java(TM) SE Runtime Environment (build 1.8.0_191-b12)
Java HotSpot(TM) 64-Bit Server VM (build 25.191-b12, mixed mode)
[root@jenkins ~]# mvn -v
Apache Maven 3.5.4 (1edded0938998edf8bf061f1ceb3cfdeccf443fe; 2018