1.启动Jenkins
在浏览器输入ip:port后,进入Jenkins初始化界面,需要查看文件,得到密码。
输入密码进入初始化界面,选择推荐插件安装。
安装完成创建账号,进入Jenkins主界面。
2.配置插件
Manage Jenkins ==》Global Tool Configuration
修改Maven的配置,修改为我们安装的maven的setting.xml
添加Java,指定我们安装的java路径
添加Git,这里路径需要指定为可执行的Git,路径在安装路径下的/bin/git
添加Maven,指定我们安装的Maven路径
3.插件异常
一般我们在安装推荐插件时,我们不一定能全部安装成功,因此在第一次进入Global Tool Configuration时,会提示插件依赖缺失
在头部提示需要的依赖的插件及版本,进入:Manage Jenkins ==》Manage Plugins
点击第二个:可选插件,挨个搜索需要的插件,选中,然后直接安装即可
安装完所有的需要的插件,即可消除提示。
4.安装中文插件
进入:Manage Jenkins ==》Manage Plugins ==》 可选插件:Localization: Chinese (Simplified)
原本的Locale Plugin已经没用了,不知道为啥配置了不生效
5.启用钩子
Manage Jenkins ==》Configura System ==》
6.新建项目
1.点击“新建Item”
2.输入项目名称,点击构建一个Maven项目,点击确定。进入配置
3.点击源码管理,选择git,输入项目地址,添加凭证(一般用用户名密码),选项构建的分支
4.选择通过webhook(钩子)触发
5.选择配置的Maven,指定执行的操作:clean install
6.指定根POM路径,指定执行操作
7.编写执行的脚本(启动服务)
提供一个样例
#!/bin/bash #export BUILD_ID=dontKillMe这一句很重要,这样指定了,项目启动之后才不会被Jenkins杀掉。 export BUILD_ID=dontKillMe #指定最后编译好的jar存放的位置 target_path=/data/microservice/eureka/ #Jenkins中编译好的jar位置 jenkins_path=/var/lib/jenkins/workspace/eureka # 停止原来的进程 PID=$(ps -ef | grep microservice-eureka-7001.jar | grep -v grep | awk '{ print $2 }') if [ -z "$PID" ] then echo Application is already stopped else echo kill $PID kill $PID fi PID=$(ps -ef | grep microservice-eureka-7002.jar | grep -v grep | awk '{ print $2 }') if [ -z "$PID" ] then echo Application is already stopped else echo kill $PID kill $PID fi PID=$(ps -ef | grep microservice-eureka-7003.jar | grep -v grep | awk '{ print $2 }') if [ -z "$PID" ] then echo Application is already stopped else echo kill $PID kill $PID fi #将编译好的jar复制到最后指定的位置 cp ${jenkins_path}/microservice-eureka-7001/target/microservice-eureka-7001.jar ${target_path} cp ${jenkins_path}/microservice-eureka-7002/target/microservice-eureka-7002.jar ${target_path} cp ${jenkins_path}/microservice-eureka-7003/target/microservice-eureka-7003.jar ${target_path} #启动jar,指定SpringBoot的profiles为test,后台启动 nohup java -jar ${target_path}/microservice-eureka-7001.jar >> /data/log/eureka/7001.log 2>&1 & nohup java -jar ${target_path}/microservice-eureka-7002.jar >> /data/log/eureka/7002.log 2>&1 & nohup java -jar ${target_path}/microservice-eureka-7003.jar >> /data/log/eureka/7003.log 2>&1 &