全程只讲你需要手动点击、填写、配置的操作,分两大阶段:一次性全局配置(管理员只做1次)项目任务配置(每个Java项目配1次)日常发布(每次部署只点1个按钮)

前置说明

架构:

  1. Jenkins服务器:负责拉代码、Maven打包生成jar
  2. 远程业务服务器:接收jar、停止旧服务、启动新jar
    核心插件:Publish Over SSH(远程传文件+执行shell)、Maven IntegrationGit Plugin

第一阶段:一次性全局配置(管理员操作,仅初次搭建做)

步骤1:点击安装必备插件

在这里插入图片描述

  1. 左侧菜单点击【系统管理】→【插件管理】
  2. 切换到【可用插件】,搜索3个插件并勾选:
    • Maven Integration plugin
    • Publish Over SSH
    • Git Plugin
  3. 页面底部点击【安装 without restart】,等待全部安装成功
  4. 安装完成点击【返回首页】

步骤2:全局配置远程服务器SSH连接(关键)

在这里插入图片描述在这里插入图片描述

  1. 左侧【系统管理】→【系统配置】,下拉页面找到 Publish over SSH 模块
  2. 找到【SSH Servers】→ 点击【Add】新增远程服务器信息,逐项填写:
    • Name:自定义名称(如prod-app-server,后面项目要选这个)
    • Hostname:远程服务器IP地址
    • Username:远程服务器登录账号(root/app)
    • Remote Directory:远程接收jar的根目录,填/opt/app(远程机器要提前建好这个文件夹)
  3. 点【Advanced】展开登录验证:
    • 勾选Use password authentication,输入远程服务器密码
  4. 右下角点击【Test Configuration】,出现Success代表连通成功
  5. 页面最底部点击【保存】,全局配置完成

第二阶段:新建/配置Java项目任务(每个项目配置1次)

步骤1:新建自由风格项目

在这里插入图片描述

  1. Jenkins首页左侧点击【新建任务】
  2. 输入任务名称 → 选择【构建一个自由风格的软件项目】→ 点击【确定】进入项目配置页

步骤2:源码管理(拉Git代码)

在这里插入图片描述

  1. 下滑到【源码管理】,选择Git
  2. Repository URL:填项目Git地址(gitee/gitlab/github)
  3. Credentials:点击【添加】输入Git账号密码/密钥,选中凭证
  4. Branches to build:填要打包的分支,如*/master
  5. 无需保存,继续往下配置

步骤3:构建步骤(Maven打包生成jar)

在这里插入图片描述

  1. 找到【构建】模块 → 点击【增加构建步骤】→ 选择【调用顶层Maven目标】
  2. Goals 输入打包命令:
clean package -DskipTests
  1. 保存构建步骤,继续下滑

步骤4:构建后操作(上传jar到远程+启动服务,核心部署步骤)

在这里插入图片描述
在这里插入图片描述

  1. 找到【构建后操作】→ 点击【增加构建后操作步骤】
  2. 下拉选择:Send files or execute commands over SSH
  3. SSH Server:下拉选中第一阶段配置好的远程服务器名称(prod-app-server)
  4. 点击【Advanced】展开文件传输配置,填写3个核心参数:
    • Source files:target/*.jar(Jenkins本地打包生成的jar路径)
    • Remove prefix:target(上传时自动去掉target文件夹,远程直接放jar)
    • Remote directory:/opt/app(和全局配置的远程目录一致)
  5. Exec command(远程服务器执行启停脚本,直接复制):
# 1. 杀掉旧java进程
PID=$(ps -ef | grep java -jar /opt/app/*.jar | grep -v grep | awk '{print $2}')
if [ -n "$PID" ];then kill -9 $PID;fi
# 2. 后台启动新jar,输出日志
nohup java -jar /opt/app/*.jar --spring.profiles.active=prod > /opt/app/app.log 2>&1 &
sleep 3
# 健康检测(可选,验证启动)
curl http://127.0.0.1:8080/actuator/health
  1. 页面最底部点击【保存】,项目一次性配置全部完成

第三阶段:日常发布(每次更新代码只需要点1个按钮)

在这里插入图片描述
在这里插入图片描述

  1. Jenkins首页点击你的项目名称,进入项目详情页
  2. 页面左侧直接点击【Build Now】(仅这一步手动点击)
  3. 自动执行全流程,无需任何手动操作:
    1. Jenkins拉取Git最新代码
    2. Maven执行打包,生成target/*.jar
    3. SSH上传jar到远程/opt/app
    4. 远程执行脚本:停旧服务→启动新jar
  4. 查看日志:点击构建记录#1/#2 → 【控制台输出】,看是否部署成功

区分:哪些是一次性配置、哪些是每次发布要操作

1. 只做1次(搭环境时)

  • 插件安装
  • 系统配置SSH远程服务器

2. 每个新项目做1次(新增服务时)

  • 新建任务、配置Git源码
  • 配置Maven打包步骤
  • 配置SSH上传+远程启动脚本

3. 每次迭代发布(日常操作)

  • 仅点击项目内【Build Now】

补充时序图(对应点击操作流程)

远程业务服务器 Jenkins服务端 JenkinsWeb页面 运维/开发人员 远程业务服务器 Jenkins服务端 JenkinsWeb页面 运维/开发人员 一次性配置操作 日常发布操作 点击系统管理→插件管理安装SSH/Maven插件 系统配置→Publish Over SSH添加远程服务器IP密码 新建任务,配置Git、Maven打包、SSH部署脚本并保存 进入项目,点击【Build Now】按钮 触发构建任务 git拉取代码 + mvn打包生成jar SSH上传target/*.jar至/opt/app 执行shell脚本 停旧进程、启动新jar 返回启动日志/健康检测结果 构建完成,展示控制台输出日志 页面显示构建成功/失败状态

常见点击排错操作

  1. 部署失败:点击对应构建号 → 【控制台输出】查看报错
  2. SSH连不上远程服务器:回到系统配置,点【Test Configuration】重测连通性
  3. Jar找不到:检查构建步骤Maven命令是否正确,查看控制台打包日志
  4. 远程启动失败:登录远程服务器手动执行Exec command里的脚本测试
Logo

openEuler 是由开放原子开源基金会孵化的全场景开源操作系统项目,面向数字基础设施四大核心场景(服务器、云计算、边缘计算、嵌入式),全面支持 ARM、x86、RISC-V、loongArch、PowerPC、SW-64 等多样性计算架构

更多推荐