Jenkins简单使用部署项目

肖卓2024年9月18日
大约 6 分钟

1.Jenkins下载

> 其他下载地址[https://get.jenkins.io/war-stable/](https://get.jenkins.io/war-stable/) > > 最新版本下载地址:[https://www.jenkins.io/download/](https://www.jenkins.io/download/) >

下载适合自己的版本,本次安装采用最新的2.462版本

2.环境安装

2.1安装JDK17

参考博客:[https://blog.csdn.net/shengma76/article/details/133640356](https://blog.csdn.net/shengma76/article/details/133640356)

下载链接:https://jdk.java.net/java-se-ri/17open in new window

2.2安装git

参考博客:[https://blog.csdn.net/qq_45281589/article/details/134650456](https://blog.csdn.net/qq_45281589/article/details/134650456)

下载地址:https://git-scm.com/download/winopen in new window

2.3安装maven

下载地址:[https://maven.apache.org/download.cgi](https://maven.apache.org/download.cgi)

将下载好的maven解压到一个目录中

修改maven配置,打开setting.xml文件,添加如下配置

<mirrors>
  <!--阿里云仓库-->
  <mirror>
    <id>alimaven</id>
    <mirrorOf>central</mirrorOf>
    <name>aliyun maven</name>
    <url>http://maven.aliyun.com/nexus/content/repositories/central/</url>
  </mirror>
  <!--中央仓库-->
  <mirror>
    <id>repo1</id>
    <mirrorOf>central</mirrorOf>
    <name>Human Readable Name for this Mirror.</name>
    <url>http://repo1.maven.org/maven2</url>
  </mirror>

  <mirror>         
    <id>central</id>         
    <name>aliyun central</name>         
    <url>https://maven.aliyun.com/repository/central</url>        
    <mirrorOf>central</mirrorOf>
  </mirror>
  <mirror>         
    <id>google</id>         
    <name>aliyun google</name>         
    <url>https://maven.aliyun.com/repository/google</url>        
    <mirrorOf>google</mirrorOf>
  </mirror>
  <mirror>         
    <id>public</id>         
    <name>aliyun public</name>         
    <url>https://maven.aliyun.com/repository/public</url>        
    <mirrorOf>public</mirrorOf>
  </mirror>
  <mirror>         
    <id>gradle-plugin</id>         
    <name>aliyun gradle-plugin</name>         
    <url>https://maven.aliyun.com/repository/gradle-plugin</url>        
    <mirrorOf>gradle-plugin</mirrorOf>
  </mirror>
  <mirror>         
    <id>spring</id>         
    <name>aliyun spring</name>         
    <url>https://maven.aliyun.com/repository/spring</url>        
    <mirrorOf>spring</mirrorOf>
  </mirror>
  <mirror>         
    <id>spring-plugin</id>         
    <name>aliyun spring-plugin</name>         
    <url>https://maven.aliyun.com/repository/spring-plugin</url>        
    <mirrorOf>spring-plugin</mirrorOf>
  </mirror> 
  <mirror>         
    <id>grails-core</id>         
    <name>aliyun grails-core</name>         
    <url>https://maven.aliyun.com/repository/grails-core</url>        
    <mirrorOf>grails-core</mirrorOf>
  </mirror>
  <mirror>         
    <id>apache-snapshots</id>         
    <name>aliyun apache-snapshots</name>         
    <url>https://maven.aliyun.com/repository/apache-snapshots</url>        
    <mirrorOf>apache-snapshots</mirrorOf>
  </mirror>



</mirrors>

配置环境变量

3.安装配置Jenkins

3.1安装

![](https://cdn.nlark.com/yuque/0/2024/png/44237161/1723081750049-c2a1704b-4c6d-4f2d-ae2a-8a26196a30eb.png)

3.2配置

安装完成后在浏览器输入127.0.0.1:8077,实际端口根据自己的配置来

打开C:\ProgramData\Jenkins\.jenkins\secrets\initialAdminPassword文件,获取其中的密码

安装推荐插件

创建账号

配置路径

配置完成界面

3.3安装插件

![](https://cdn.nlark.com/yuque/0/2024/png/44237161/1723082587702-13e55f05-31e1-4f33-978c-4d148653fec4.png)

安装FTP插件

安装SSH插件

3.4配置凭证

进入[http://127.0.0.1:8077/manage/](http://127.0.0.1:8077/manage/credentials/)页面

进入http://127.0.0.1:8077/manage/credentials/open in new window页面

配置一个git的登录账号

配置远程服务器的ssh登录账号

3.5配置SSH和FTP服务

进入[http://127.0.0.1:8077/manage/configure](http://127.0.0.1:8077/manage/configure)页面

添加一个SSH服务

添加多个FTP服务

4.配置项目

4.1创建项目

点击新建Item创建新项目

4.2拉取代码

配置项目的Git

测试Git配置,进行构建,拉去代码并查看工作空间中是否拉取成功

解决Windows系统中文件名太长不支持的问题,使用管理员启动powerShell

再次进行打包,成功获取代码

4.3编译源码

构建步骤选择 Execute Windows batch command ,命令为打开文件夹,通过maven编译项目

cd jeecg-weiwang

mvn clean package -P test,SpringCloud

配置完成后执行一次构建,在更新源代码后Jenkins会执行一次编译命令,打包项目

打包时报以下错误,没有找到com.xiaozhuo:dlt645-07:jar:1.0.4这个包,因为是我们自定义的jar包,所以需要手动更新到仓库中

mvn install:install-file -Dfile=E:\dlt645-07-1.0.4.jar -DgroupId=com.xiaozhuo -DartifactId=dlt645-07 -Dversion=1.0.4 -Dpackaging=jar

再次编译结果成功

4.4配置FTP上传jar包

在项目配置的** Build Steps **增加构建步骤 ** Send files over FTP **

点击构建计划测试上传是否成功,如果上传失败需要打开文件夹的写入权限

4.5配置项目重新启动

编写项目重启脚本 application_restart.sh
#!/bin/bash

# 查找并杀掉正在运行的 Java 应用程序进程
PID=$(ps -ef | grep 'jeecg-demo-cloud-start-3.4.3.jar' | grep -v 'grep' | awk '{print $2}')

if [ -z "$PID" ]; then
    echo "Application is not running."
else
    echo "Stopping application with PID: $PID"
    echo "jyjb@2023" | sudo -S kill -9 $PID
fi

# 启动项目
sleep 10
echo "jyjb@2023" | sudo -S nohup /usr/bin/java -jar -Xmx1024M -Xms256M /www/wwwroot/ydb_demo/jeecg-demo-cloud-start-3.4.3.jar --server.port=9084 > /www/wwwroot/ydb_demo/logs/application.log 2>&1 &

echo "Application started."

上传到服务器中,注意编码和权限问题,因为在Windows系统下编写的脚本可能存在编码格式问题,上传后需要进行转码

sudo apt-get install dos2unix
dos2unix /www/wwwroot/ydb_demo/application_restart.sh 
chmod +x /www/wwwroot/ydb_demo/application_restart.sh 

在项目配置的** Build Steps 增加构建步骤 Execute shell script on remote host using ssh **

** sh /www/wwwroot/ydb_demo/application_restart.sh **

重新构建进行测试

上次编辑于: 2024/9/18 16:07:54
贡献者: 肖卓
评论
Powered by Waline v2.5.1