本地构建 + SSH 发布 java 项目
# 前言
本文主要介绍:如何从零开始使用 Jpom 中的构建功能快速实现将项目从仓库中构建并发布到服务器中并启动项目。
「那么如何从零开始使用 Jpom 中的构建功能(
不安装插件端 Agent
)快速实现将项目从仓库中构建并发布到服务器中启动项目呢?」下面我们一起具体来看看👇👇
本文基于 2.6.1 版本讲解
# 操作步骤
# 第一步 安装服务端
使用一键安装的命令安装服务端
# 这里我们选择快速安装 jdk 和 maven ,实际中请根据自己情况选择
yum install -y wget && wget -O install.sh https://jpom.top/docs/install.sh && bash install.sh Server jdk+mvn
1
2
2
# 执行命令后控制台输出如下
# 服务端访问地址
http://IP:2122
IP则为部署 Jpom 服务端的IP地址,也可以使用 nginx 代理访问
# 第二步 初始化系统
为 Jpom 系统设备一个系统管理员账号密码,方便日后登录使用
需要设置 Jpom 系统中的管理员账号密码
注意超级管理的密码强度
# 第三步 配置 ssh 信息
配置 ssh 信息、便于构建后发布到对应服务器中
- 服务器IP
- ssh 端口
- 登录的账号信息(账号、密码)
- 文件目录
# 备注:文件目录为给对应 ssh 授权部分目录可以在 Jpom 中使用,一般用于构建发布目录、ssh 文件管理
# 第四步 配置构建信息
配置项目查看构建信息,用于管理项目发布流程
- 构建的项目(仓库)信息
- 项目的构建命令(依赖的构建环境:maven、vue、python、php)
- mvn clean package
- npm run build
- ......
- 构建产物的目录(项目中的相对路径)
- java 项目一般位于当前项目 target 目录下的某个文件
- vue 项目一般位于当前项目 dist 文件夹
- 发布目录:项目将发布服务器到哪个目录(
需要已经配置到 ssh 文件目录中
) - 发布命令:执行发布后执行的命令,如:配置停止、启动项目
# Java 项目发布命令示例
Tag="jpom-test-jar"
# 检查进程状态
pid=$(ps -ef | grep -v 'grep' | egrep $Tag| awk '{printf $2 " "}')
if [ "$pid" != "" ]; then
echo -n "boot ( pid $pid) is running"
echo
echo -n $"Shutting down boot: "
pid=$(ps -ef | grep -v 'grep' | egrep $Tag| awk '{printf $2 " "}')
if [ "$pid" != "" ]; then
echo "kill boot process"
# kill "$pid"
kill -9 "$pid"
fi
else
echo "boot is stopped"
fi
# 启动项目
nohup java -Dappliction=$Tag -jar /home/java/test/springboot-test-jar-0.0.1-SNAPSHOT.jar > /dev/null 2>&1 &
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
# 注意
构建命令、发布命令都需要使用非阻塞命令
帮助我们改善此文档 (opens new window)
上次更新: 2022/11/25, 22:42:24