版权声明:本文为博主原创文章,未经博主允许不得转载。
前置条件
- 安装jdk1.7或以上版本
- 安装git
- 安装maven
安装
添加Jenkins库到yum库,Jenkins将从这里下载安装。
- 1
- 2
- 3
- 4
- 1
- 2
- 3
- 4
- 安装成功后Jenkins将作为一个守护进程随系统启动
- 系统会创建一个“jenkins”用户来允许这个服务,如果改变服务所有者,同时需要修改/var/log/jenkins, /var/lib/jenkins, 和/var/cache/jenkins的所有者
- 启动的时候将从/etc/sysconfig/jenkins获取配置参数
- 默认情况下,Jenkins运行在8080端口,在浏览器中直接访问该端进行服务配置
- Jenkins的RPM仓库配置被加到/etc/yum.repos.d/jenkins.repo
停止/启动
- 1
- 2
- 3
- 1
- 2
- 3
启动报如下错误
Starting Jenkins bash: /usr/bin/Java: No such file or directory
修改Jenkins启动配置文件,指定java安装路径。
vim /etc/init.d/jenkins
在candidates中第一行添加java路径,如下:
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
修改防火墙允许8080端口访问
vim /etc/sysconfig/iptables
加入
- 1
- 1
重启防火墙生效
sudo service iptables restart
在浏览器中访问
首次进入会要求输入初始密码如下图,
初始密码在:/var/lib/jenkins/secrets/initialAdminPassword
选择“Install suggested plugins”安装默认的插件,下面Jenkins就会自己去下载相关的插件进行安装。
创建超级管理员账号
配置
git配置
源码安装
检测当前Git版本是否是2.7.4以上
git --version
如果没有安装git直接源码安装即可,如果安装了先删除原来的git。
yum -y remove git
先安装编译git需要的包。
- 1
- 1
下载&安装
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 1
- 2
- 3
- 4
- 5
- 6
- 7
查看git安装到什么地方
which git
可以看到git安装在如下目录
/usr/local/bin/git
配置
在Jenkins->Global Tool Configuration下配置git。
-
Path to Git executable:填写git的安装路径
java配置
在服务器上执行echo $JAVA_HOME便可看到Java home。
maven配置
安装
下载
- 1
- 1
解压
tar zxvf apache-maven-3.3.9-bin.tar.gz
复制到安装目录
mv ./apache-maven-3.3.9 /opt/soft/
配置环境变量
vim /etc/profile
maven环境变量
- 1
- 2
- 1
- 2
使环境变量立刻生效
source /etc/profile
验证是否配置成功
mvn -v
配置
email配置
配置邮箱,在构建失败的时候会向指定邮箱发送告知邮件。
构建配置
Poll SCM:定时检查源码变更(根据SCM软件的版本号),如果有更新就checkout最新code下来,然后执行构建动作。我的配置如下:
*/5 * * * * (每5分钟检查一次源码变化)
Build periodically:周期进行项目构建(它不管care源码是否发生变化),配置如下:
0 2 * * * (每天2:00 必须build一次源码)
到这里就可以进行构建了,左边菜单有个立刻构建按钮,点击便可以构建。
第一次构建会有点慢,maven会去下很多插件和jar包。
发布项目
tomcat配置
tomcat-users.xml添加tomcat的manager访问用户,用于发布war包。
- 1
- 2
- 3
- 1
- 2
- 3
webapps下只保留manager,删除其他文件夹。
conf\Catalina\localhost下添加manager.xml,配置如下。
- 1
- 2
- 3
- 4
- 5
- 1
- 2
- 3
- 4
- 5
发布到Tomcat
Jenkins安装Deploy to Container Plugin插件
Jenkins配置tomcat服务
在构建的时候,构建成功同时会把构建的war部署到对应tomcat下,同时可以指定多个tomcat,集群化部署的时候很方便。