jenkins搭建自动化部署平台(svn+tomcat重启)

原文链接:http://blog.csdn.net/zjs40/article/details/51818322

jenkins 自动化部署和集成代码的平台

可以将Git svn 上的代码 checkout 然后重新部署服务器,节省开发测试的效率

一、https://jenkins.io/index.html 下载jenkins包(war包)

二、下载完war包   在服务器上最好新建一个tomcat专门用来做jenkins启动的   修改一下server.xml

文件中修改   :

(1) 修改http访问端口(默认为8080端口 ,修改成不常用的端口,以免冲突)
    <Connector port="8080" maxHttpHeaderSize="8192" maxThreads="150" minSpareThreads="25" maxSpareThreads="75" enableLookups="false" redirectPort="8443" acceptCount="100" connectionTimeout="20000" disableUploadTimeout="true" />将8080修改为第一个tomcat不在使用的端口号。此处所设的端口号即是以后访问web时所用的端口号。  8888

(2) 修改Shutdown端口(默认为8005端口,防止多个tomcat端口冲突起不起来)
       <Server port="8005" shutdown="SHUTDOWN">
      将8005修改为没有在使用的端口号,例如8088

(3) 修改JVM启动端口(默认为8009端口)    
     <!-- Define an AJP 1.3 Connector on port 8009 -->
    <Connector port="8009"
               enableLookups="false" redirectPort="8443" protocol="AJP/1.3" />

修改后启动tomcat就输入

http://服务器ip:端口号/jenkins 就可以看到jenkins的界面了

进入jenkins会有个等待页,让你输入验证码 (会给你一个服务器的路径)照着服务器路径 找到initialAdminPassword文件( /root/.jenkins)把里面的内容复制到页面输入

就可以进入

接着是配置jenkins登陆的账号密码和下载插件

到这里 jenkins就算是安装成功了

接下去是jenkins配置从svn拉取代码 到tomcat底下进行部署

一、新建一个项目

二、

选择一个自由风格的软件项目并且命名进入

三、

选择源码管理,这里是从svn项目检出的 所以选择subversion

Repository URL :这里填写的是点击构建jenkins会从这个地址下把里面的文件检出 Local module directory 配置的路径下的workspace 中

Credentials :这里配置一下svn的 账号密码

Local module directory 一般配置  ./构建的项目名(/root/.jenkins/jobs/你建的构建任务/workspace/构建的项目名)

最后构建后的项目在./构建的项目名(/root/.jenkins/jobs/你建的构建任务/workspace/构建的项目名) 目录下

这样 从svn拉取代码就配置成功了

三、因为我的项目是web项目

所以拉取代码后要部署到tomcat并且重启

这时候

选择构建步骤

如果是还需要用ant构建一下web项目可以先选择invoke ant配置

我是从本地构建好的web项目 所以构建步骤只选择execute shell

在command里面写你需要在jenkins把svn的代码拉取到jenkins的jobs目录下需要做的事

这里就有三个步骤  一个是将web项目 移到tomcat下的webapps目录下

shutdown tomcat

startup tomcat

成功

BUILD_ID=DONTKILLME  (加这个原因是因为没加之前用command startup tomcat一直启动失败而shutdown却是成功的   原因是因为jenkins启动后的进程会被kill掉

所以要加这句,才能启动成功)
cp -a /root/.jenkins/jobs/dragsun_test/workspace/dragsunTest/dist/dragsunTest /home/tomcat/apache-tomcat-7.0.68/webapps(这个是将jenkins拉取的svn代码拷贝到tomcat下)
sh /home/tomcat/apache-tomcat-7.0.68/bin/restart.sh

(自己写的restart脚本)

代码如下:

#!/bin/sh
  
  bin=$(cd `dirname $0`; pwd)
  pid=$(ps aux | grep tomcat | grep -v grep | grep -v restart | grep ${bin} | awk ‘{print $2}‘) 
  
 if [ -n "${pid}" ]; then
      echo "Shutdown..."
     sh ${bin}/shutdown.sh
      sleep 3
 
     pid=$(ps aux | grep tomcat | grep -v grep | grep -v restart | grep ${bin} | awk ‘{print $2}‘)
     if [ -n "${pid}" ]; then
        kill -9 ${pid}
         sleep 1
     fi
 fi
 
 echo "Startup..."
 sh ${bin}/startup.sh
 if [ "$1" = "-v" ]; then
     tail -f ${bin}/../logs/catalina.out
 fi

这个脚本拷下来粘贴到txt文件下修改后缀成sh文件丢到tomcat的bin目录下是有问题的 会报错

所以拷到服务器后

用vim (tomcat bin目录)/restart.sh

打开文件编辑器查看是否有多余字符,删除

点击键盘Esc 键后输入

:set ff?

查看文件格式

:set ff=unix

修改文件格式,保存后退出

最后将构建任务保存,并且apply后就可以进行构建任务了

原文地址:https://www.cnblogs.com/st666/p/9642073.html

时间: 2024-10-11 15:44:39

jenkins搭建自动化部署平台(svn+tomcat重启)的相关文章

maven+jenkins 搭建自动化部署平台

jenkins 自动化部署 1.安装JDK 1.1.上传linux的JDK安装包到opt目录下,并解压 1.2.配置jdk环境变量vim /etc/profile  在尾部添加如下内容,添加完成后执行命令:source /etc/profile # jdk环境变量 export JAVA_HOME=/opt/jdk1.8.0_102 export PATH=$PATH:$JAVA_HOME/bin export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HO

centos7+docker+Jenkins+svn搭建自动化部署平台

centos7+docker+Jenkins+svn搭建自动化部署平台 1. centos7 参考链接:http://www.macrozheng.com/#/reference/linux_install tips 公司服务器配置(1T机械+256固态+i7的u) 需要我们把系统,环境(java,mysql,redis,docker等)装到固态上(速度快),我们的代码放到机械上.分区情况如下图 2. centos7中安装docker1.31.1 自行百度,此处无坑 3. centos7安装配置

jenkins实现自动化部署及服务重启-初级

jenkins实现自动化部署及服务重启-初级 一.说明 部署jenkins 主要用于web界面化的代码上传.生产服务重启.还未涉及到svn中的代码打包,后期会配合开发同事一起完成此功能.使用jenkins而不是脚本执行主要作用是为了方便版本控制.减少人为失误导致.而jenkins主要是作为可视化的一个框架使用,核心还是各类脚本的执行.而此篇内容主要是讲解如果搭建jenkins,脚本内容将在后续逐个展示,因为作者运用jenkins比较粗浅,也在不断摸索中,此篇文章也是为菜鸟朋友们准备的,希望借鉴此

jenkins+git+maven搭建自动化部署项目环境

简介    折腾了两个晚上,趁着今晚比较有空,把jenkins+git+maven搭建自动化部署项目环境搭建的过程记录一下,这里我把github作为git的远程仓库(https://github.com/jacky-        lulu/cxf_demo-Maven-Webapp)     系统:centos6.5 maven: Apache Maven 3.3.9 git:git version 2.0.0 1.首先安装git,看以前另外一篇博客 http://www.cnblogs.co

开源Java自动化部署平台JDeploy

JDeploy是Java + Shell实现的基于Linux系统的自动化.可视化的项目部署平台,能部署Java服务.Java Web项目,可以简化项目部署操作,无需繁琐的黑窗口SSH指令及Jenkins复杂的配置. 传统部署方式:从SVN/GIT服务器检出代码->在IDE中打包->将包传到服务器->SSH连上服务器->敲指令启动/停止 JDeploy部署:创建项目->一键部署/启动/停止 * 检出代码.打包.启动.停止等操作通过Shell脚本自动执行. 下载:http://d

关于自动化部署平台的尝试

前言 参加过两次公司生产环境的版本更新,最近一次让我萌生了开发一个自动化部署平台的念头.虽然网上也有不少的自动化部署软件,但还是想自己动手写一个.一来是为了让平台更适应当前的实际情况,也利于以后自己对平台通用性的扩展:二来是为了锻炼自己,给自己的空闲时间找点事情做,不至于虚度时光. 以下是整理出的初稿,想到的点比较简单,后面会持续完善. 如果本文有幸被您看到,望能指点一二. 不管是积极的还是消极的,请留下您的看法. 背景 程序开发好之后免不了部署.刚开始还好,手动打包.上传.部署,也不需要多长时

基于Jenkins Pipeline自动化部署

最近在公司推行Docker Swarm集群的过程中,需要用到Jenkins来做自动化部署,Jenkins实现自动化部署有很多种方案,可以直接在jenkins页面写Job,把一些操作和脚本都通过页面设置,也可以在每个项目中直接写Pipeline脚本,但像我那么优秀,那么追求极致的程序员来说,这些方案都打动不了我那颗骚动的心,下面我会跟你们讲讲我是如何通过Pipeline脚本实现自动化部署方案的,并且实现多分支构建,还实现了所有项目共享一个Pipeline脚本. 使用Jenkins前的一些设置 为了

Linux文档整理之【Jenkins+Docker自动化部署.Net Core】

这次整理的文档是Jenkins+Docker实现自动化部署,很早之前就写的,今天有时间就搬到博客园做个记录. Jenkins是基于Java开发的一种持续集成工具,主要用于持续.自动的构建/测试软件等相关项目.在Java开发中我们经常能看到使用jenkins来部署,.Net core目前还是比较少见的,但是好的东西我们就应该要拿来使用.借鉴. 1. 安装JenKins 这里使用Docker来安装JenKins,当然也可以直接安装到Linux中. 创建jenkins工作目录 mkdir /usr/l

使用jenkins 插件自动部署项目至tomcat

前面使用maven.ant编译项目就不说,只说一下使用jenkins的插件自动部署项目 1.首先jenkins安装插件Deploy to container Plugin ,下载地址为:https://wiki.jenkins-ci.org/display/JENKINS/Deploy+Plugin 2.安装完后,将会在项目配置中见到一下选项 3.配置tomcat远程部署账号,在tomcat目录下conf文件内tomcat-users.xml 文件增加以下配置 <role rolename=&quo