JPOM尝试

简介: JPOM 尝试

官网

1. 安装

1.1. 服务器端/插件端

#确保 系统中已经有 JDK 并且配置环境变量
#默认安装 默认安装是将服务端安装到默认位置:/usr/local/jpom-server/
curl -fsSL https://jpom.top/docs/install.sh | bash -s Server default
#默认安装
#默认安装是将插件端安装到默认位置:/usr/local/jpom-agent
curl -fsSL https://jpom.top/docs/install.sh | bash -s Agent default

1.2. 安装服务

# 默认安装地址为/usr/local/jpom-server/
bash /usr/local/jpom-server/bin/Service.sh install
#如果指定了其他安装地址 则替换为其他地址
bash /xxxx/bin/Service.sh install
# 默认安装地址为/usr/local/jpom-agent/
bash /usr/local/jpom-agent/bin/Service.sh install
#如果指定了其他安装地址 则替换为其他地址
bash /xxxx/bin/Service.sh install

安装出现的问题:

JAVA_HOME variable not found

#注意 服务器上的jdk最好自己安装,不要用openjdk
#1. 查看java 是否安装,未安装先安装jdk
java -version 
#2. 查找java安装路径,会返回路径,后续要配置
readlink -f $(which java)
#3. 配置环境变量
vim ~/.bashrc
#4. 在最后加上如下代码 其中JAVA_HOME的路径就是第2步返回的路径
export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.262.b10-1.el7.x86_64/jre/bin/java
export PATH=$JAVA_HOME/bin:$PATH
#5. 保存并退出
#6. source 
source ~/.bashrc

CLASSPATH variable not found

#和上面一样 打开vim ~/.bashrc 
vim ~/.bashrc
#在文件后面添上如下代码
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
#source 让文件生效
source ~/.bashrc

1.3. 启动服务

#开机自启
systemctl enable jpom-server
systemctl start jpom-server
systemctl stop jpom-server
systemctl status jpom-server
systemctl restart jpom-server
#开机自启
systemctl enable jpom-agent
systemctl start jpom-agent
systemctl stop jpom-agent
systemctl status jpom-agent
systemctl restart jpom-agent

启动完成后,http://您服务器的IP:2122 即可访问 Jpom 服务端 (插件端没有页面)

如果无法访问,查看 linux 是否开放2122 端口

2. 构建

菜单: 在线构建-> 构建列表 -> 新增

2.1. 在线构建

2.1.1. 构建方式

这边选择本地构建

2.1.2. 基础信息

填写构建名称,以及 git 仓库地址和构建的分支

2.1.3. 构建流程

  • 这边是后台项目,命令填mvn clean package
  • 前端项目 命令 填前端的打包命令npm i && npm run build:test

注意: 这边的构建是 安装的 jpom 这台服务器 拉取 git 的源码,并打包的。所以后台项目打包之前需要在 jpom 这台服务器上先安装 maven。前端也一样 需要先安装 node 环境。

注意: 这边有个产物目录  ,这个地址看构建的日志,去 jpom 中找一下记录。然后吧对应的路径填到产物目录里可以。填错的话,构建的时候,会提示找不到产物目录。

  • java 项目一般是 target/xxx.jar
  • vue 项目是 dist 目录

2.1.4. 发布操作

这边可以选择不发布或者本地命令。不发布的话只是打包,发布的话填写发布后命令,即可打包后并发布

Tag="Z001-snackShop.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 /usr/local/jpom-server/data/build/f8fe6b8cac25468389fe2de1a59aebc4/source/snack-admin/target/Z001-snackShop.jar  > /dev/null 2>&1 &

2.2. 触发器

在侯建列表中还有一个触发器。触发器的作用就是在 git push 自动执行构建并打包。

注意: jpom 需要部署在公网 ip 的服务器上,这边复制 单个触发器地址 到 git 上 才可以。

官网介绍

目录
相关文章
|
6月前
|
Ubuntu
Ubuntu安装Jpom
Ubuntu安装Jpom
82 0
|
6月前
|
Java Maven
Jpom部署时遇到的坑
Jpom部署时遇到的坑
54 0
|
应用服务中间件 nginx Windows
nginx常用命令大全
nginx常用命令大全
448 0
|
Windows
gitblit 服务启动不了
gitblit 服务启动不了
574 0
gitblit 服务启动不了
|
网络安全
一个简单的ansible配置
环境:一台管理机,二台被管理主机操作系统:Centos7.4管理机IP:192.168.0.201二台被管理主机IP:192.168.0.206 192.168.0.207目的:在管理机上安装ansible,通过ansible来管理另外两台主机 1、在管理机上配置好epel源,通过epel源安装a...
1430 0
|
Apache 数据安全/隐私保护 Windows
|
应用服务中间件 nginx 数据安全/隐私保护
|
网络安全 数据安全/隐私保护
|
Shell 网络安全 开发工具