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的正确离线安装和使用
389 0
|
Ubuntu
Ubuntu安装Jpom
Ubuntu安装Jpom
156 0
|
Java Maven
Jpom部署时遇到的坑
Jpom部署时遇到的坑
200 0
|
应用服务中间件 Linux Shell
【Shell脚本】Linux安装Nginx以及开机自启
【Shell脚本】Linux安装Nginx以及开机自启
【Shell脚本】Linux安装Nginx以及开机自启
|
监控 Ubuntu Python
Supervisor离线安装及使用
Supervisor是用Python开发的一套通用的进程管理程序,能将一个普通的命令行进程变为后台daemon,并监控进程状态,异常退出时能自动重启。它是通过fork/exec的方式把这些被管理的进程当作supervisor的子进程来启动,这样只要在supervisor的配置文件中,把要管理的进程的可执行文件的路径写进去即可。也实现当子进程挂掉的时候,父进程可以准确获取子进程挂掉的信息的,可以选择是否自己启动和报警
214 0
|
监控 Unix 程序员
正确离线安装supervisor
supervisor是一个用python语言编写的进程管理工具,它可以很方便的监听、启动、停止、重启一个或多个进程。当一个进程意外被杀死,supervisor监听到进程死后,可以很方便的让进程自动恢复,不再需要程序员或系统管理员自己编写代码来控制。
543 0
|
Windows
gitblit 服务启动不了
gitblit 服务启动不了
640 0
gitblit 服务启动不了
|
机器学习/深度学习 应用服务中间件 Shell
Shell实现简单的管理Nginx服务启动脚本
实现的功能 一:Nginx启动自检功能二:自检报错,自动进入所在文件的所在行,让运维人员进行修改!三:文件锁功能使得该脚本只能让系统管理员执行,并保证不能同时执行多次!四:可适用较好,实现简单的start,status,restart,reload,stop等功能! 脚本的缺点 一:未引用方法,使.
1337 0
|
应用服务中间件 nginx Ruby
配置 unicorn 和 nginx 运行 Redmine
Redmine 支持多种服务器配置, Web 服务器可选择 nginx 或 apache, Ruby 应用服务器可选择 unicorn, passenger, puma 或 thin。 Easy Redmine 的官方安装文档推荐使用 nginx + unicorn 运行 Easy Redmine 并给出了详细的安装配置手册。
2911 0
|
Shell 应用服务中间件 Perl