基于CentOS+Jenkins+Maven+SVN+Tomcat+Java的自动化持续集成

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/lyh1234/article/details/51555682

1. 准备工作

  • CentOS 7
  • Jenkins 2.7
  • Maven 3.3.9
  • SVN
  • Tomcat 7
  • Java 1.7

2. 安装Jenkins

2.1 安装

sudo wget -O /etc/yum.repos.d/jenkins.repo http://pkg.jenkins-ci.org/redhat/jenkins.repo
sudo rpm --import https://jenkins-ci.org/redhat/jenkins-ci.org.key
sudo yum install jenkins

2.2 启动或停止

sudo service jenkins start/stop/restart
sudo chkconfig jenkins on

2.3 开启防火墙端口

firewall-cmd --add-port=8080/tcp --permanent
firewall-cmd --reload

默认端口为8080,可以在配置文件中修改

3. 安装Maven

3.1 下载

wget http://apache.fayea.com/maven/maven-3/3.3.9/binaries/apache-maven-3.3.9-bin.tar.gz

3.2 解压

tar xzvf apache-maven-3.3.9-bin.tar.gz

3.3 配置环境变量

export PATH=/data/maven/bin:$PATH

4. 配置Jenkins

4.1 访问地址

http://ip:8080/

4.2 安装插件

打开“系统管理”->“管理插件”
image
- Deploy to container Plugin :发布到容器
- Maven Integration plugin :创建Maven项目
- M2 Repository Cleanup Plugin :清理
- Subversion Plug-in :SVN插件
- SVN Publisher plugin
- Tracking SVN Plugin
- Workspace Cleanup Plugin

4.3 配置变量

打开“系统管理”->“Global Tool Configuration”

4.3.1 设置JDK

image

4.3.2 设置Maven

image

5. 构建Maven项目

5.1 构建一个maven项目

image

5.2 源码管理

选择 Subversion ,输入 Repository URL (源码地址),添加 Credentials (svn帐号)
image

5.3 构建触发器

勾选 Poll SCM ,在日程表中输入“/1 * * * ”,表示每隔1分钟自动检测SVN是否有改变,如果有则自动构建项目。
image

5.4 构建参数

选择Build选项卡,
Root POM设置为发布项目的pom.xml,
Goals and options 为编译的目标和参数,
这里填写:clean package -Dmaven.test.skip=true
image

5.5 发布到Tomcat

选择“构建后操作”,选择“Deploy war/ear to a container”,即把war包发布到容器,这里用的是tomcat。
- WAR/EAR files 需要发布的war所在路径

target/*.war
  • Context path 部分到Tomcat的名称
ini-web
  • Manager user name tomcat管理登录用户名
  • Manager password tomcat管理登录密码
  • Tomcat URL tomcat地址

6. Tomcat配置

6.1 管理帐号

修改 tomcat的conf/tomcat-user.xml 中的角色和用户

<role rolename="manager-gui"/>
<role rolename="manager-script"/>
<role rolename="admin-gui"/>
<user username="admin" password="123456" roles="manager-gui,admin-gui,manager-script"/>

7. 立即构建

选择项目,执行立即构建,就可以在管理页面看到相应的操作结果。
点击“Console Output”可以查看实时的控制台输出。
直到控制台输出success,说明发布成功。

Finished: SUCCESS

猜你喜欢

转载自blog.csdn.net/lyh1234/article/details/51555682