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 上 才可以。

官网介绍

目录
相关文章
|
监控 程序员 Linux
supervisor的正确离线安装和使用
supervisor的正确离线安装和使用
370 0
|
Ubuntu
Ubuntu安装Jpom
Ubuntu安装Jpom
133 0
|
Java Maven
Jpom部署时遇到的坑
Jpom部署时遇到的坑
160 0
|
监控 Ubuntu Python
Supervisor离线安装及使用
Supervisor是用Python开发的一套通用的进程管理程序,能将一个普通的命令行进程变为后台daemon,并监控进程状态,异常退出时能自动重启。它是通过fork/exec的方式把这些被管理的进程当作supervisor的子进程来启动,这样只要在supervisor的配置文件中,把要管理的进程的可执行文件的路径写进去即可。也实现当子进程挂掉的时候,父进程可以准确获取子进程挂掉的信息的,可以选择是否自己启动和报警
197 0
|
监控 Unix 程序员
正确离线安装supervisor
supervisor是一个用python语言编写的进程管理工具,它可以很方便的监听、启动、停止、重启一个或多个进程。当一个进程意外被杀死,supervisor监听到进程死后,可以很方便的让进程自动恢复,不再需要程序员或系统管理员自己编写代码来控制。
516 0
|
Java jenkins Shell
Jenkins 实现自动打包并且启动服务| 学习笔记
快速学习 Jenkins 实现自动打包并且启动服务。
Jenkins 实现自动打包并且启动服务| 学习笔记
|
分布式计算 Java Hadoop
ambari 2.7.6源码编译指南
2021/11/16,ambari终于推出了2.7.6版本,该版本相对2.7.5版本以来,共有26个contributors提交了114个commits以及修改了557个文件。本文以ambari最新版本源码,分享如何进行ambari源码编译以及编译过程中遇到的坑。
ambari 2.7.6源码编译指南
|
NoSQL Redis
Homebrew 插件自启动
版权声明:本文首发 http://asing1elife.com ,转载请注明出处。 https://blog.csdn.net/asing1elife/article/details/82892939 ...
1246 0
|
Ubuntu 搜索推荐 关系型数据库