jenkins 发布远程服务器并部署项目

安装参考另一个文章

配置maven 和 jdk 和 git

注意jdk的安装目录,是jenkins 安装所在服务器的jdk目录

注意maven的目录 是jenkins 安装所在服务器的maven目录

注意git的目录 是jenkins 安装所在服务器的 git 目录

安装 Publish Over SSH 插件

配置远程服务器

创建项目

创建maven项目

开始配置

General 默认不用修改

源码管理

注意

构建触发器

构建环境

Pre Steps

选择 Send files or execute commands over SSH

目标服务器 Root根目录 创建 x.sh 文件

文件内容 将 111111111111111111 写到 xxx.txt文件里面

#!/bin/bash

echo "111111111111111111">xxx.txt

测试 手动运行 x.sh

创建 xxx.txt文件 并将 111111111111111111 写入到里面

测试完后 删除xxx.txt

打包之前没有 xxx.txt 文件

编辑 x.sh文件 ,并添加脚本内容

#!/bin/bash

#删除历史数据

rm -rf home

appname=$1

#获取传入的参数

echo "arg:$1"

#获取正在运行的jar包pid

pid=`ps -ef | grep 1 \| grep 'java -jar' \| awk '{printf 2}'`

echo $pid

#如果pid为空,提示一下,否则,执行kill命令

if -z $pid ;

#使用-z 做空值判断

then

echo "$appname not started"

else

kill -9 $pid

echo "$appname stoping...."

check=`ps -ef | grep -w $pid | grep java`

if -z $check ;

then

echo "appname pid:pid is stop"

else

echo "$appname stop failed"

fi

fi

执行 demo 传入的参数,就是用脚本里面的 appname 接受的

执行命令 nohup java -jar /root/home/java/app/ruoyi-admin.jar >mylog.log 2>&1 &

启动后打印日志写入到 mylog.log 这个文件 可以到这个文件去日志

把脚本 ./x.sh ruoyi-admin 配置到 启动前 Pre Steps

Build 构建

选择 Send files or execute commands over SSH

是项目 去前缀 ruoyi-web

构建后操作

选择 Send build artifacts over SSH

vi start.sh 脚本内容

nohup /usr/java/jdk1.8.0_162/bin/java -jar /root/home/java/app/ruoyi-admin.jar >mylog.log 2>&1 &

注意分配权限 chmod 777 start.sh

开始构建

查看控制台

构建成功并推送远程服务器

远程服务器的jar包

查看日志 cat mylog.log 启动成功

访问获取验证码的接口进行测试是否成功

http://192.168.43.202:9090/captchaImage

相关推荐
宋均浩14 小时前
# GitHub Actions 实战:从零搭建 CI/CD 流水线的 5 个核心配置
ci/cd
大树882 天前
金刚石散热越强,管路越先见顶
大数据·运维·服务器·人工智能·ai
摇滚侠2 天前
Linux CentOS7 rpm 安装 MySQL 5.7
linux·运维·mysql
霸道流氓气质2 天前
领域驱动设计(DDD)在 Spring Boot 微服务中的实践指南
运维·spring boot·微服务
Inhand陈工2 天前
基于台达PLC与映翰通IG502的智慧水产养殖精准投喂与远程运维解决方案
运维·人工智能·物联网·阿里云·信息与通信
酣大智2 天前
ARP代理--工作原理
运维·网络·arp·arp代理
shushangyun_2 天前
2026年快消品B2B系统推荐:支持终端门店订货、促销政策自动化的工具?
java·运维·网络·数据库·人工智能·spring·自动化
施努卡机器视觉2 天前
SNK施努卡侧滑门锁上滑轮总成自动化装配线,从零件到组件,全流程精密制造方案
运维·自动化·制造
AC赳赳老秦2 天前
用 OpenClaw 搭建服务器故障应急响应系统,自动处理 80% 常见运维故障
android·运维·服务器·python·rxjava·deepseek·openclaw
java_cj2 天前
深入kube-apiserver认证机制:从Bearer Token到mTLS的完整认证链解析
linux·运维·服务器·云原生·容器·kubernetes