当前位置:   article > 正文

Linux环境:Jenkins + Maven + Jdk + Gitee 实现项目自动部署_gitee +maven+j简单小项目

gitee +maven+j简单小项目

一.安装Git

(1)执行安装命令

	yum install git
  • 1

在这里插入图片描述
(2)查看git安装结果

		git --version
  • 1

在这里插入图片描述

(3)查看安装信息

	Git默认安装在/usr/libexec/git-core目录下,可输入指令,查看安装信息:
  • 1

在这里插入图片描述

二.安装maven

	***可在官网下载指定版本 http://mirror.bit.edu.cn/apache/maven
  • 1

在这里插入图片描述
(1)解压

	tar -zxvf apache-maven-3.5.4-bin.tar.gz 
  • 1

(2)配置maven环境变量

	vi /etc/profile
  • 1

(3)添加环境变量

	export MAVEN_HOME=/var/local/apache-maven-3.5.4
	export MAVEN_HOME
	export PATH=$PATH:$MAVEN_HOME/bin
  • 1
  • 2
  • 3

在这里插入图片描述
(4)执行命令,使maven环境变量生效,

	source /etc/profile
  • 1

(5)查看maven安装状态

	mvn -v
  • 1

在这里插入图片描述

三.配置git的ssh key

Jenkins本机部署可直接执行对应脚本,如跨机器部署项目则需要以下三步

	1.需要通过公共秘钥连通两个机器
	
	2. 修改部署机器下的.ssh目录权限问题
	
	3. 脚本执行(根据部署环境不同,自己编写脚本)
  • 1
  • 2
  • 3
  • 4
  • 5

连通机器:
1>在部署jenkins的机器(4.19)上生成秘钥,执行以下命令:

	ssh-keygen -t rsa -C "admin@163.com"
  • 1

在这里插入图片描述
会在.ssh目录下生成两个文件id_rsa,id_rsa.pub
在这里插入图片描述
2>将机器(4.19)生成的id_rsa.pub文件内容赋值到要部署(4.125)的机器.ssh目录下
的authorized_keys文件中

3>完成后需要在4.19机器上执行一行命令[ssh 部署机器用户@部署机器ip]

修改.ssh目录权限

  1. .ssh目录的权限必须是700
  2. .ssh/authorized_keys文件权限必须是600

四.新建jenkins任务

1.基本配置
在这里插入图片描述

2.源码管理

(1).设置Gitee源码路径
在这里插入图片描述(2).在Credentials添加Gitee凭证信息,推荐使用Gitee令牌
在这里插入图片描述Gitee令牌生成步骤:
(1)进入jenkins目录,打开id_rsa.pub文件,然后全部复制文件里的内容
(2)登陆Gitee,进入个人设置–>安全设置–>SSH公钥–>添加公钥,然后把
刚刚复制的内容粘贴到此处

3.构建

在这里插入图片描述

五.全局工具配置

1.选择全局工具配置
在这里插入图片描述2.Maven配置
在这里插入图片描述3.JDK配置
在这里插入图片描述4.Git配置
在这里插入图片描述
5.Maven安装
在这里插入图片描述

6.保存

六.节点管理

1.选择节点管理在这里插入图片描述
2.新建节点
在这里插入图片描述3.基本配置
在这里插入图片描述

4.设置启动方式

(1)设置从节点服务器信息
在这里插入图片描述

(2)在Credentials添加服务器连接信息
在这里插入图片描述* 如果报returned status code 128:错误,尝试使用私钥凭据
在这里插入图片描述

5.设置节点属性
在这里插入图片描述6.保存
并启动代理

七.执行任务

1.选择任务
在这里插入图片描述2.点击立即构建即可
在这里插入图片描述

脚本执行(仅供参考)

#!/bin/bash

#避免Jenkins在构建完成后使用processTreeKiller杀掉了所有子进程。而且这是Jenkins的默认行为
BUILD_ID=dontkillme

#tomcat 控制中心路径
tomcat_path=/opt/apache-tomcat-8.5.35/webapps

#从git中下载的源码路径
# $JENKINS_HOME 为全局变量 请事先查看 有没有声明没有在 在/etc/profile中声明
# export JENKINS_HOME=/home/jenkins
source_path=/home/jenkins/workspace/sports-112.126.59.235

project=sports
# war包路径 及 名称
war_path=/home/jenkins/workspace/sports-112.126.59.235/target/
war_name=sports.war
war_file=$war_path$war_name

# file_path=/home/jenkins/remoting/logs
# 日志所在路径
log_file=/home/jenkins/logs/sports.log

cd /home/jenkins
#创建备份目录
if [ ! -d logs ];then
	mkdir logs
fi

#定义一个函数 用来写入log文件
writeLogFun(){
        if [ ! -e $log_file ]
        then
                touch $log_file
        fi
        nowtime=`date +%Y%m%d%H%M%S`
        echo $nowtime$1 >> $log_file
}

writeLogFun '开始执行 mvn install命令当前路径'$(pwd)
# mvn install
mvn -f $source_path/pom.xml install


writeLogFun '创建备份目录,当前路径'$(pwd)
cd /opt/apache-tomcat-8.5.35/webapps

#创建备份目录
if [ ! -d back ]
then
	mkdir back
fi

#对war包备份

if [ -e $war_name ]
		writeLogFun '对war包备份,当前路径'$(pwd)
		
        then
                cp sports.war back/sports.war`date +%Y%m%d%H%M%S`
        fi

#重启服务

cd /opt/apache-tomcat-8.5.35/bin

writeLogFun '杀掉Tomcat线程,当前路径'$(pwd)
ps -ef | grep tomcat | grep -v grep | awk '{print $2}' |xargs kill -9

rm -rf sports*
mv $war_file $tomcat_path

/opt/apache-tomcat-8.5.35/bin/startup.sh
writeLogFun '启动tomcat服务,当前路径'$(pwd)
echo '启动项目'
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44
  • 45
  • 46
  • 47
  • 48
  • 49
  • 50
  • 51
  • 52
  • 53
  • 54
  • 55
  • 56
  • 57
  • 58
  • 59
  • 60
  • 61
  • 62
  • 63
  • 64
  • 65
  • 66
  • 67
  • 68
  • 69
  • 70
  • 71
  • 72
  • 73
  • 74
  • 75




*觉得有用可以关注博主哦,如果再不能相遇,祝你早午晚都安。。。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/不正经/article/detail/130687
推荐阅读
相关标签
  

闽ICP备14008679号