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)
❤️成为赞助商
  • 解决方案

    • 如何使用 Jpom 的在线构建为 Jpom 发版
    • 万能的 DSL 项目模板(Java)
    • 基于 Jpom 搭建应用部署系统
    • 一键安装实践
    • Docker 容器安装实践
    • 离线安装实践
    • 自定义第三方通知
  • 在线构建

    • 本地构建 + SSH 发布 java 项目
    • 本地构建 + Jpom Server 使用 SCP 发布项目
    • 本地构建 + 项目发布 node 项目
    • 本地构建 + SSH 发布 node 项目
    • 本地构建 + 自定义管理 python 项目
    • 容器构建 + 项目发布 java 项目
    • Gitee 提交代码后自动执行构建
    • 使用 gradle 本地构建打包项目并发布到节点
    • GitLab 提交代码后自动执行构建
    • 构建状态统一通知推送
    • 通过私人令牌导入仓库
  • docker

    • 管理 docker
    • 在线构建 docker 镜像
    • 在线构建 docker 镜像并推送至远程仓库
    • docker 安装 redis 流程
  • 节点管理

    • 管理编译安装的 nginx
  • 项目管理

    • 自定义管理 java 项目
    • DSL项目接口探活
    • 在 Jpom 中如何使用 DSL 项目来管理 TOMCAT
      • 前言
      • 需要准备的环境
        • 安装插件端推荐命令
        • 安装服务端推荐命令
      • 创建 tomcat 项目
        • 配置项目白名单
        • 配置远程下载 host
        • 创建项目
        • 下载 tomcat 安装包
      • 配置 DSL 脚本
      • 管理 tomcat
        • 启动
        • 停止、重启
        • 愉快的管理 tomcat
      • 构建发布
        • 创建项目仓库
        • 配置构建发布项目
      • 附件
        • DSL配置内容
        • 获取 tomcat 状态脚本
    • 在 Jpom 中如何使用 DSL 项目来管理 elasticsearch
  • 项目监控

    • 监控项目 + 邮件报警通知
    • DSL 项目接口探活监控报警
  • 在线脚本

    • 使用节点脚本定时备份 docker 中的 mysql 数据库
  • SSH管理

    • 在线管理 SSH 终端以及上传文件(SFTP)和执行命令历史
  • 日常管理

    • 如何开启 h2-console web 访问功能
    • Linux安装Jpom2.10.40教程
    • 使用 Jpom 导入多个项目仓库
    • 使用 Rainbond 部署 Jpom
  • 实践案例
  • 项目管理
bwcx_jzy
2023-02-14
目录

在 Jpom 中如何使用 DSL 项目来管理 TOMCAT

# 前言

本文主要讲解如果使用 Jpom 中的 DSL 项目 + 在线构建来实现日常管理 tomcat + 部署相关相关使用流程

注意:本文采用一键安装同时基于 2.10.16 版本讲解,系统为 centos

# 需要准备的环境

  1. Jpom 服务端
    1. 安装 jpom 需要 java 环境
    2. 构建需要 maven 环境
  2. Jpom 插件端
    1. 安装 jpom 需要 java 环境
  3. Tomcat 安装包
  4. 一个 tomcat war 包项目代码仓库(案例中使用 java 项目)

# 安装插件端推荐命令

推荐命令会自动检查环境中是否存在 jdk 如果不存在将自动安装 jdk。并且将插件端安装到默认目录:/usr/local/jpom-agent

一般情况建议自行安装,如果不需要自动安装删除命令最后的 jdk 即可

# 安装插件端和 jdk 环境
curl -fsSL https://jpom.top/docs/install.sh | bash -s Agent jdk+default
1
2

# 安装服务端推荐命令

推荐命令会自动检查环境中是否存在 jdk 和 maven 如果不存在将自动安装 jdk 和 maven。并且将服务端安装到默认目录:/usr/local/jpom-server

一般情况建议自行安装,如果不需要自动安装删除命令最后的 jdk+mvn 即可

# 安装服务端和 jdk、maven 环境
# 安装插件端和 jdk 环境
curl -fsSL https://jpom.top/docs/install.sh | bash -s Server jdk+mvn+default
1
2
3

😋

案例就默认您已经安装好上述环境(jpom 插件端、jpom 服务端、maven 插件)

😋

案例就默认您已经初始好服务端并且配置了节点

😋

如果对安装流程和初始化流程不是了解有疑问的可以参考其他实践案例和安装说明文档

# 创建 tomcat 项目

# 配置项目白名单

需要提前配置白名单路径奥,不知道白名单路径作用的请查阅文档

# 配置远程下载 host

文档演示中使用远程下载 tomcat 文件并解压,所以需要提前配置下载的 host

img_1.png

# 创建项目

进入节点管理>>管理>>项目管理>>项目列表,进行项目创建

img.png

img_2.png

# 下载 tomcat 安装包

img_3.png

img_4.png

img_5.png

配置剔除文件夹为 1 ,是因为 tomcat 安装包里面会自动包含一层文件夹名(apache-tomcat-10.0.27),我们这里将 tomcat 所有文件解压到项目根目录所以需要剔除第一级文件夹

img_6.png

# 配置 DSL 脚本

这里配置 DSL 脚本是用来获取 tomcat 当前状态,因为启动、停止 tomcat 我们已经使用 tomcat 提供的默认脚本来实现了。

img_7.png

img_8.png

保存后点击编辑,查看脚本 id

img_9.png

复制脚本 id 、到项目 DSL 内容替换 status 的 scriptId 字段

img_10.png

# 管理 tomcat

img_11.png

# 启动

img_12.png

img_13.png

这里发现启动时候有错误信息,通过排查文件是肯定存在的。那么就是文件执行权限的问题了,这里我们需要将 tomcat bin 目录添加可执行权限

# 需要自行替换为您的项目实际路径
chmod +x /data/jpom/tomcat/bin/*.sh
1
2

执行前

img_14.png

执行后

img_15.png

**再次执行启动

img_16.png

img_17.png

# 停止、重启

img_18.png

# 愉快的管理 tomcat

到这里您可以通过 tomcat 管理页面来管理 tomcat 的状态、编辑文件、下载文件、上传文件、删除文件)等。

如果您想通过 jpom 查看 tomcat 的日志文件,您可以通过文件追踪、日志阅读(日志搜索)相关功能来实现,详情可以查阅其他文档

# 构建发布

# 创建项目仓库

这里我们就默认您已经会配置仓库了

文档使用 jpom 案例仓库:https://gitee.com/keepbx/Jpom-demo-case (opens new window)

img_19.png

# 配置构建发布项目

img_20.png

img_21.png

产物目录:springboot-test-war/target/springboot-test-war-2.7.1.war 需要根据您项目打包后 war 实际路径替换

二级目录:webapps 这里,我们将 war 发布到 tomcat 项目的目录下的 webapps 目录下

img_22.png

img_23.png

img_24.png

img_25.png

# 附件

# DSL配置内容

# scriptId 可以是项目路径下脚本文件名或者系统中的脚本模版ID
description: 测试
run:
  start:
#    scriptId: project.sh
    scriptId: ./bin/startup.sh
    scriptArgs: 
  status:
#    scriptId: project.sh
    scriptId: c46d184b642f42e1b210c6c8a036a463
    scriptArgs: 
  stop:
#    scriptId: project.sh
    scriptId: ./bin/shutdown.sh
    scriptArgs: 
#  restart:
##    scriptId: project.sh
#    scriptId: eb16f693147b43a1b06f9eb96aed1bc7
#    scriptArgs: restart
#    scriptEnv:
#      "boot_active": test
file:
# 备份文件保留个数
#  backupCount: 5
# 限制备份指定文件后缀(支持正则)
#  backupSuffix: [ '.jar','.html','^.+\.(?i)(txt)$' ]
config:
# 是否开启日志备份功能
#  autoBackToFile: true
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29

# 获取 tomcat 状态脚本

Tag="=${PROJECT_PATH}"

pid=$(ps -ef | grep -v 'grep' | egrep $Tag| awk '{printf $2 " "}')
#echo "$pid"
if [ "$pid" != "" ]; then
	echo "running:$pid"
else
	echo "boot is stopped"
fi
1
2
3
4
5
6
7
8
9
帮助我们改善此文档 (opens new window)
#tomcat
上次更新: 2023/09/20, 13:11:05
DSL项目接口探活
在 Jpom 中如何使用 DSL 项目来管理 elasticsearch

← DSL项目接口探活 在 Jpom 中如何使用 DSL 项目来管理 elasticsearch→

最近更新
01
构建状态统一通知推送
09-19
02
Linux安装Jpom2.10.40教程
05-09
03
演示系统
04-24
更多文章>
Theme by Vdoing | Copyright © 2017-2023 MIT License  京ICP备17044819号
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式
×