jenkins+gitee+ssh自动化部署

Posted bbgs-xc

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了jenkins+gitee+ssh自动化部署相关的知识,希望对你有一定的参考价值。

一、准备环境

  1,配置maven(MAVEN_HOME)

  2,配置jdk(JAVA_HOME)我这里用的jdk1.8.0_121,之前碰到过一次别的版本的jdk在启动tomcat无法解析https情况,如果有这种情况建议更换jdk版本

  3,配置git(我这里用的时git)或者svn根据自己需求

  4,下载jenkins.war包(https://www.jenkins.io/zh/download/ 技术图片

   5,配置对应的tomcat,修改tomcat配置文件conf/server.xml中加上utf-8解码。将上一步的jenkins.war包放在tomcat的webapps中启动tomcat

<Connector port="8080" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443" URIEncoding="UTF-8" />

 二、启动并配置

  1,访问http://ip:8080/jenkins进入解锁界面

技术图片

      在linux中 cat /root/.jenkins/secrets/initialAdminPassword获取密码并登陆

  

  2,初始化进入安装推荐插件(也可以自行安装不采用推荐的)

#远程部署容器(tomcat部署用)
Deploy to container Plugin
#git相关插件
Git plugin
#中文支持
Locale plugin
Localization: Chinese (Simplified)
#maven支持
Maven Integration plugin
#远程部署其他服务器shell命令支持
Publish Over SSH

  

  3,jenkins系统配置

技术图片

   

    a>中文支持

技术图片

 

     b>配置Publish over SSH(远程控制的主机)可配置多个

技术图片  

  4,安全配置(/jenkins/configureSecurity/)是否允许注册、是否允许登录后操作等这里就不讲了

  5,全局工具配置

技术图片

     a>maven配置和jdk

技术图片

     b>git和maven

技术图片

三、构建项目

  新建item项目

技术图片

 

 

   1)配置git地址

技术图片

   2)构建触发器

技术图片

  3)构建

技术图片

  4)构建后操作

技术图片

  5)构建后的shell脚本

#!/bin/bash

DATE=`date +%Y%m%d_%H:%M`
PRO_NAME=cmkj
SOR_DIR=/opt/module/project
FILE_TYPE=jar
JAVA=$JAVE_HOME/bin/java
PID=`ps -ef |grep $PRO_NAME.$FILE_TYPE |grep -v grep |awk {print $2}`
if [ -z $PID ];then
    echo "===the initial service is null, and it will be started now!==="

    nohup $JAVA -Xms64M -Xmx128M -Duser.timezone="GMT+08" -Duser.language="zh" -Duser.region="CN" -Dspring.profiles.active=test -jar $SOR_DIR/$PRO_NAME.$FILE_TYPE >> $SOR_DIR/nohup.out 2>&1 &
    echo "===service started successful!==="
else
       /bin/kill -9 $PID

    nohup $JAVA -Xms64M -Xmx128M -Duser.timezone="GMT+08" -Duser.language="zh" -Duser.region="CN" -Dspring.profiles.active=test -jar $SOR_DIR/$PRO_NAME.$FILE_TYPE >> $SOR_DIR/nohup.out 2>&1 &
    echo "===service started successful!==="

echo "===service restarted successful!==="
fi

 

 

   

 

以上是关于jenkins+gitee+ssh自动化部署的主要内容,如果未能解决你的问题,请参考以下文章

Jenkins自动化部署

Jenkins+Docker+Gitee+SpringBoot自动化部署

Jenkins+Docker+Gitee+SpringBoot自动化部署

Jenkins和Gitee自动化部署SpringBoot项目

Jenkins和Gitee自动化部署SpringBoot项目

Docker+jenkins+Gitee+Maven构建自动化部署