jenkins自动部署

最近在使用公司的jenkins进行自动部署项目,因为以前没有用过,一直半生不熟,所以特地写个随机记录。java

 

1.登陆jenkins服务spring

jenkins安装好后,咱们经过浏览器访问它的主页(以下),输入用户名和密码进行登陆。shell

 

2.创建新的项目浏览器

因为这是公司的服务器,所以上面以前已经安装好了几个其余的项目,此次我是须要创建一个新的项目,所以点击箭头所指的“New Item”tomcat

3.输入项目名称,并选择项目类型。服务器

我这里为了方便自由配置,选择了第一个“Freestyle project”curl

4.配置相关内容maven

#每次项目更新,构建时候抛弃以前旧的构建,最大记录数设置为20.测试

#配置使用的JDK,有时候服务器上有多个版本JDK,最好是咱们本身指定版本,以防出现版本错误的状况。url

#配置版本控制器,因为我使用的是SVN,所以这里配置的是项目的SVN地址,下方Credentials是验证信息

#配置完版本控制后,在下方选择“Always check out a fresh copy”,以保证每次构建项目都是最新代码,并且不须要咱们进行手动同步。

#配置MAVEN信息。我这里使用的maven构建项目,包括编译打包发布等,所以这里配置MAVEN的相关信息,"Goals"配置的是maven的打包指令,先clean旧文件,再install新文件,同时-Dskip Tests跳过测试。

同时咱们还添加了一个“Execute shell”,里面一共有两句话:

“BUILD_ID=DONTKILLME”:这里是由于jenkins会存在杀死衍生进程的状况,配置这条命令能够阻止它乱杀。

“sh /******/**.sh”:sh命令不用多说了,就是运行sh文件的意思。我这里编写了一个运行脚本,maven打包以后,由这个脚原本运行jar。

#下面的内容纯粹就是分享一下个人这个脚本

内容比较简单,就是先检查程序是否在运行中,若是是,就先强行杀死程序(kipp -9)。

因为maven的install指令将jar安装在了maven仓库中,咱们直接从仓库将项目包cp到指定的目录下。

而后经过java指令启动jar文件。

tomcat_pid=`ps -ef | grep java | grep autopayment-data.jar |awk '{print $2}'`
echo $tomcat_pid
if [ -n "$tomcat_pid" ]; then
  echo "Current autopayment-data Pid:" ${tomcat_pid} 
  kill -9 ${tomcat_pid}
  echo "This autopayment-data Had Shutdown!"
fi
echo "Now autopayment-data Is Starting To Publish..."
#curl -X POST http://localhost:9070/autopayment/shutdown
rm -rf /u01/autopayment-data/autopayment-data.jar
cp /usr/local/mvnRespo/com/hrtpayment/autopayment-data/1.0-SNAPSHOT/autopayment-data-1.0-SNAPSHOT.jar /u01/autopayment-data/autopayment-data.jar
echo "start autopayment-data ....."
cd /u01/autopayment-data
nohup java -jar -Xmx1024m -Xms256m -Xmn128m -Xss256k -XX:MaxPermSize=512m -Dfile.encoding=UTF-8 /u01/autopayment-data/autopayment-data.jar --spring.profiles.active=dev &

到此,咱们的自动构建项目已经配置完成。

相关文章
相关标签/搜索