Jenkins+gitee 搭建自动化部署

Jenkins+gitee 搭建自动化部署

环境说明:

软件 版本 备注
CentOS 8.5.2111
JDK 1.8.0_211
Maven 3.8.8
git 2.27.0
Jenkins 2.319 最好选稳定版本,不然安装插件有点麻烦

一、安装Jenkins程序

1、到官网下载相应的版本war或者直接使用yum安装

Jenkins官网下载

直接使用wget指令下载,例

复制代码
wget https://mirrors.huaweicloud.com/jenkins/war/2.319/

2、直接运行war

复制代码
java -jar jenkins.war --httpPort=8888

3、浏览器打开服务器本机链接8888

复制代码
http://127.0.0.1:8888

第一次登录需要查看控制台输出的密码或者直接执行指令查看密码,账号是admin

复制代码
cat /var/lib/jenkins/secrets/initialAdminPassword

4、登录后进行安装插件

需要使用maven、git、gitee插件


5、配置Global Tool Configuration参数



6、生成gitee的令牌

7、配置Configure System参数

主要是Jenkins Location和Gitee 配置两项


二、安装maven

1、到官网下载tar包

复制代码
wget https://dlcdn.apache.org/maven/maven-3/3.8.8/binaries/apache-maven-3.8.8-bin.tar.gz

2、解压maven包

复制代码
tar -zxvf apache-maven-3.8.8-bin.tar.gz

3、配置settings.xml文件

添加阿里云镜像仓库

复制代码
 <mirror>
        <id>alimaven</id>
        <mirrorOf>central</mirrorOf>
        <name>aliyun maven</name>
        <url>http://maven.aliyun.com/nexus/content/groups/public/</url>
     </mirror>

4、配置环境变量

复制代码
添加环境变量
vim ~/.bash_profile

例如:
export MAVEN_HOME=/opt/maven/apache-maven-3.8.8
PATH=$PATH:$HOME/bin:$MAVEN_HOME/bin

使环境变量生效
source ~/.bash_profile

5、验证安装是否成功

(jdk安装参考maven安装)

三、配置项目自动构建

1、创建构建任务


2、配置任务信息

General和Source Code Management

如果令牌不存在,就重新添加并选择,如果还不行就直接选择添加gitee的账号密码并选择

Build Triggers

Post Steps

jenkins_test_start.sh文件

复制代码
#!/bin/bash
port=8099
echo '根据端口号查询对应的pid'
pid=$(netstat -nlp | grep :$port | awk '{print $7}' | awk -F"/" '{ print $1 }');
echo '杀掉对应的进程'
if [ -n "$pid" ]
then
   echo "kill -9 的pid:" $pid
   kill -9 $pid
fi
#删除原来的jar包
rm -rf /opt/project/jenkins-test/jenkens-test-0.0.1-SNAPSHOT.jar
echo "启动jar包"
BUILD_ID=dontKillMe
nohup java -Xms10m -Xmx20m -jar /opt/project/jenkins-test/jenkens-test-0.0.1-SNAPSHOT.jar --server.port=8099  > output.log 2>&1 &
echo '启动完成'

选择保存并应用

3、配置gitee的webhook参数

选择对应的代码库,webhook的作用是为了idea提交代码到gitee仓库后会触发jenkins构建项目

四、构建项目


或者使用开发工具直接提交代码到gitee代码仓库也会触发构建项目

这样就大功告成了

相关推荐
Danileaf_Guo3 小时前
256台H100服务器算力中心的带外管理网络建设方案
运维·服务器
拾贰_C4 小时前
【Linux | Windows | Terminal Command】 Linux---grep | Windows--- findstr
linux·运维·服务器
虹科网络安全5 小时前
艾体宝洞察 | 利用“隐形字符”的钓鱼邮件:传统防御为何失效,AI安全意识培训如何补上最后一道防线
运维·网络·安全
石像鬼₧魂石6 小时前
Kali Linux 网络端口深度扫描
linux·运维·网络
alengan6 小时前
linux上面写python3日志服务器
linux·运维·服务器
yBmZlQzJ6 小时前
免费内网穿透-端口转发配置介绍
运维·经验分享·docker·容器·1024程序员节
JH30736 小时前
docker 新手入门:10分钟搞定基础使用
运维·docker·容器
缘不易7 小时前
Springboot 整合JustAuth实现gitee授权登录
spring boot·后端·gitee
小卒过河01047 小时前
使用apache nifi 从数据库文件表路径拉取远程文件至远程服务器目的地址
运维·服务器·数据库