基于Maven+SVN+tomcat+jenkins实现自动化部署

随着迭代的项目越来越多,研发到测试,测试到上线,频繁的版本发布耗费了大量的时间,在加上公司的现状是实施运维人员不能把部署发布工作跳起来,采用敏捷开发模式的项目随着版本频繁迭代光版本到测试、生产环境就占用了研发人员很多时间,所以基于Maven+SVN+tomcat+jenkins实现自动化部署势在必行。


 

  1. 基于Maven+SVN+tomcat+jenkins实现自动化部署架构的运行机制基于Maven+SVN+tomcat+jenkins实现自动化部署_第1张图片

  2. jenkins 安装部署

  • 安装包下载

  • (1)官网下载安装war包 https://jenkins.io/download/

  • (2)官网用户文档 https://jenkins.io/doc/

  • 基于Maven+SVN+tomcat+jenkins实现自动化部署_第2张图片
  • 1、安装包下载

    (1)官网下载安装war包 https://jenkins.io/download/
    (2)官网用户文档 https://jenkins.io/doc/

  • 3、环境准备

  •  jdk1.8版本、

  • tomcat8、

  • maven3.3及以上

4、部署jenkins

 下载jenkins.war 后,  在tomcat中部署启动即可

(1)如果设置JENKINS_HOME则安装到对应目录,否则,对于windows系统,会默认装在C盘,部署到tomcat进行配置启动(根据配置向导进行就可以);(2)linux环境下启动jenkins后会自动选择一个目录

 

基于Maven+SVN+tomcat+jenkins实现自动化部署_第3张图片

如图所示:在linux下启动后:

   首次访问 需要将/root/.jenkins/secrets/initialAdminPassword 目录下的密码复制出来解锁系统。

   cat /root/.jenkins/secrets/initialAdminPassword

5、根据向导配置jenkins、安装推荐插件

 

基于Maven+SVN+tomcat+jenkins实现自动化部署_第4张图片

基于Maven+SVN+tomcat+jenkins实现自动化部署_第5张图片

5、安装插件(做自动化部署必选插件)

      

  •  Maven Project Plugin

  • Subversion Plug-in

  • JIRA plugin

  • Maven Integration plugin

  • Deploy to container Plugin

  • SSH

6、站点镜像报错问题

如果网络环境不允许访问jenkins默认的更新站点镜像,可以修改为国内可用镜像地址。更新站点报错 ,需在插件设置里填写最新的插件更新站点 http://updates.jenkins-ci.org/update-center.json
清华大学开源软件镜像站jenkins镜像地址列表
http://mirrors.jenkins-ci.org/status.html

7、全局工具配置(重要)

基于Maven+SVN+tomcat+jenkins实现自动化部署_第6张图片

基于Maven+SVN+tomcat+jenkins实现自动化部署_第7张图片

基于Maven+SVN+tomcat+jenkins实现自动化部署_第8张图片

 


配置自动化部署任务

1、创建maven任务

基于Maven+SVN+tomcat+jenkins实现自动化部署_第9张图片

2、配置svn 用户名、密码

基于Maven+SVN+tomcat+jenkins实现自动化部署_第10张图片

 基于Maven+SVN+tomcat+jenkins实现自动化部署_第11张图片

3、构建后操作

基于Maven+SVN+tomcat+jenkins实现自动化部署_第12张图片

参数详解:

第一项(WAR/EAR files):是war包的相对路径(相对于工作区路径,即在工作区中war包的相对路径.)如我的maven执行完成之后会在工作区的target目录下生成项目.war,所以这里我的路径就写target\项目.war.

第二项:(content path):tomcat的发布路径,即使用localhost/(content path设置的名字)来访问项目.

最后一项是deploy on failure是发生错误的时候是否发布到tomcat.

4、tomcat配置文件添加

(1)在tomcat-users.xml中添加角色、用户、密码等信息





(2)修改tomcat的访问权限(重要)

                 在 webapps\manager\META-INF下的contex.xml中配置访问tomcat的权限:


allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" />

基于Maven+SVN+tomcat+jenkins实现自动化部署_第13张图片

5、构建触发器

 

基于Maven+SVN+tomcat+jenkins实现自动化部署_第14张图片

Build periodically:周期进行项目构建(它不care源码是否发生变化),我的配置如下:
0 2 * * *  (每天2:00 必须build一次源码)

 

Poll SCM:定时检查源码变更(根据SCM软件的版本号),如果有更新就checkout最新code下来,然后执行构建动作。
1.首先格式为:* * * * *(五个星);

 

2.第一个*表示分钟,取值0~59
   第二个*表示小时,取值0~23
   第三个*表示一个月的第几天,取值1~31
   第四个*表示第几月,取值1~12
   第五个*表示一周中的第几天,取值0~7,其中0和7代表的都是周日

 

6、启动自动化部署

基于Maven+SVN+tomcat+jenkins实现自动化部署_第15张图片

基于Maven+SVN+tomcat+jenkins实现自动化部署_第16张图片

你可能感兴趣的:(研发管理)