Jpom Jpom
🔖首页
  • 一键安装教程
  • Docker 容器安装教程
  • 离线安装教程
  • v2.9.X迁移到v2.10.X指南
  • v2.8.X迁移到v2.9.X指南
  • 数据库迁移到 mysql
  • 实践案例目录
  • 名词解释
  • 什么是 DSL
  • 权限说明
💡DSL说明
  • 加入社区讨论
  • 如何贡献
  • 贡献者们
🤝用户
  • 下载中心
  • Gitee (opens new window)
  • Github (opens new window)
🔖首页
  • 一键安装教程
  • Docker 容器安装教程
  • 离线安装教程
  • v2.9.X迁移到v2.10.X指南
  • v2.8.X迁移到v2.9.X指南
  • 数据库迁移到 mysql
  • 实践案例目录
  • 名词解释
  • 什么是 DSL
  • 权限说明
💡DSL说明
  • 加入社区讨论
  • 如何贡献
  • 贡献者们
🤝用户
  • 下载中心
  • Gitee (opens new window)
  • Github (opens new window)
❤️成为赞助商
  • 常见问题

    • 账号相关
    • 启动失败
    • 数据相关
    • 无法访问
    • 使用报错
    • 修改配置
    • 在线构建相关
    • 权限说明
    • 更多问题
  • 名词解释

    • 基础名词
    • 命令相关
      • 非阻塞命令
      • java、javaw 命令
      • Jpom 中多种脚本对比
      • Jpom 中的白名单说明
      • Jpom 的参数配置
      • 触发器 (webhook、钩子)
    • 产物目录
    • 更多说明
  • DSL说明

    • DSL 说明
    • 管理 java 项目脚本示例
    • 管理 python 项目脚本示例
    • 容器构建的 DSL 配置示例
  • Nginx 代理配置

    • Nginx代理推荐配置
  • 配置 maven 私服
  • 开启备份文件功能相关说明如下
  • FQA
  • 名词解释
bwcx_jzy
2022-06-11
目录

命令相关

# 非阻塞命令

在 Jpom 中大部分命令都需要使用非阻塞:

  • 构建命令
  • 构建本地发布命令
  • 构建 SSH 发布命令
  • SSH 模版命令
  • 脚本模版命令

非阻塞命令指执行命令后会自动退出而不是一直阻塞窗口需要按 ctrl+c 才能退出命令窗口、或者需要输入交互都命令

阻塞命令举例:

  1. yum intall xxxxx, 执行这样的命令需要用户确认输入才能继续执行,这样的命令就不能在 jpom 上述功能相关命令中使用,需要修改为 yum install -y xxxxx
  2. java -jar xxx.jar, 执行这样的命令会阻塞窗口,那么在 linux 中可以使用 nohup 来解决,修改为:nohup java -jar xxx.jar >>xxx.log 2>&1 &
  3. npm run serve,执行这样的命令窗口将一直阻塞,那么需要修改为 npm run build

# java、javaw 命令

通常情况都是使用 java 命令来启动 java 项目,如: java -jar xxxx.jar

Jpom 中在 windows 环境来启动 java 项目(包括 Server.bat、Agent.bat) 因为 windows 没有 nohup 命令,使用 javaw 可以实现类似 nohup 效果并且能将控制台日志输出到指定文件

# Jpom 中多种脚本对比

脚本类型 存储方式 执行方式 是否支持批量执行 是否支持批量编辑 是否支持定时执行
脚本列表 服务端 在服务端执行 否 否 支持 cron
ssh 命令脚本 服务端 ssh 远程执行 是 否 支持 cron
节点脚本 节点(插件端) 在节点执行 否 是 (使用服务端脚本分发) 支持 cron

# Jpom 中的白名单说明

Jpom 中的白名单的由来,由于项目管理都需要对项目的文件进行管理。在创建项目的时候需要确定项目的相关文件存放的路径。 那么此时由用户决定存放到哪里,显得有点冒然(不安全,有点随意)。因为服务器中有些路径已经存放重要配置文件,此时项目路径相同那么必然没有任何安全性

为什么是白名单而不是配置黑名单(禁止名单):假设设置黑名单、如果设置黑名单那么没有办法最快速收集用户不同服务器中重要文件路径,此方法也显得不合适

需要配置白名单的地方有如下:

  • 节点项目目录白名单
  • 节点 nginx 配置文件白名单
  • 节点 ssl 证书目录白名单
  • 节点分发白名单(和节点项目白名单类似)
  • SSH 授权管理目录白名单

# Jpom 的参数配置

Jpom 中配置文件使用 SpringBoot 加载配置文件机制实现,配置文件中可以配置一些遵循 SpringBoot 的属性

在项目运行的根路径下的extConfig.yml文件

  1. 插件端示例:extConfig.yml
  2. 服务端示例:extConfig.yml

# 触发器 (webhook、钩子)

Jpom 中的触发器可以理解为一个接口,执行这个接口会自动帮助您完成一些事情

Jpom 中的触发器可以理解为 webhook(钩子) 实现

目前 Jpom 中支持触发器的功能有如下:

  • 执行构建
  • 执行 SSH 脚本
  • 执行服务端脚本
  • 执行节点脚本

使用触发器可以实现在一定场景下实现自动执行的操作

如:提交代码后自动构建、外部系统调用触发器来实现执行 Jpom 系统中的相关脚本

帮助我们改善此文档 (opens new window)
#名词-命令相关
上次更新: 2022/10/20, 12:50:11
基础名词
产物目录

← 基础名词 产物目录→

最近更新
01
2023年
03-31
02
2022年
03-31
03
2021年
03-31
更多文章>
Theme by Vdoing | Copyright © 2017-2023 MIT License  京ICP备17044819号
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式
×