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

相关推荐
北邮刘老师17 分钟前
A3C Network:智能体互联网的层次化视图
运维·服务器·网络
空中楼阁,梦幻泡影40 分钟前
LoRA 详细解析,使用LoRA 方式对模型进行微调详细操作指南
运维·服务器·人工智能·机器学习·语言模型
晚风吹长发1 小时前
初步了解Linux中的动静态库及其制作和使用
linux·运维·服务器·数据结构·c++·后端·算法
Le_ee1 小时前
dc4打靶报告
运维·服务器·网络
yeflx2 小时前
解决Ubuntu22.04宿主机docker容器中nvidia-smi偶发失效问题
运维·docker·容器
4t4run2 小时前
28、Linux 系统定时任务
linux·运维·服务器
~黄夫人~2 小时前
Ansible 自动化运维:从 “手动输密码” 到 “一键免密管理”
linux·运维·自动化·ansible
cui__OaO2 小时前
Linux驱动--基于驱动设备分离的按键中断驱动
linux·运维·服务器·嵌入式
littlegirll2 小时前
ssh远程调用图形程序
运维·ssh·x11forwarding·远程调用图形界面
OnlyEasyCode3 小时前
Linux下载Navicat、特定版本Mysql
linux·运维·服务器