2019-01-04 15:34:10 +08:00
|
|
|
|
# Jpom(Java Project Online Management)Java项目在线管理
|
2018-06-25 22:55:37 +08:00
|
|
|
|
|
2019-01-04 17:14:17 +08:00
|
|
|
|
> 在linux 中管理jar包运行,如SpringBoot、Jboot、jfinal、t-io项目如果是打包为Jar那么我们一般是使用shell 命令来管理,
|
2018-12-29 15:54:44 +08:00
|
|
|
|
> 如果有多个项目管理起来显得比较麻烦。
|
|
|
|
|
> 如果新增、更新、删除项目都不是很方便。
|
2018-12-29 16:19:48 +08:00
|
|
|
|
> 再或者想不使用电脑控制重启、关闭、开启项目。直接使用shell 登录服务器管理显然不是最简单的方法
|
2019-01-03 12:04:33 +08:00
|
|
|
|
> 如果休息日在朋友家玩,公司领导联系说需要控制一下某个项目,此时你身边有电脑,但是没有专业的管理服务器的软件。
|
2018-12-29 15:54:44 +08:00
|
|
|
|
|
|
|
|
|
|
2019-02-26 15:09:43 +08:00
|
|
|
|
### 在这里[Jpom](https://gitee.com/keepbx/jpom) 项目将如上问题统一解决
|
2018-12-29 15:54:44 +08:00
|
|
|
|
|
2019-02-19 11:24:52 +08:00
|
|
|
|
![GitHub](https://img.shields.io/github/license/jiangzeyin/jpom.svg?style=flat)
|
|
|
|
|
![jdk](https://img.shields.io/badge/JDK-1.8+-green.svg)
|
|
|
|
|
[![travis](https://travis-ci.org/jiangzeyin/jpom.svg?branch=master)](https://travis-ci.org/jiangzeyin/jpom)
|
2019-02-19 13:06:31 +08:00
|
|
|
|
[![codecov](https://codecov.io/gh/jiangzeyin/jpom/branch/master/graph/badge.svg)](https://codecov.io/gh/jiangzeyin/jpom)
|
2019-02-19 11:24:52 +08:00
|
|
|
|
|
|
|
|
|
|
2019-01-04 11:51:42 +08:00
|
|
|
|
> Jpom采用SpringBoot开发web项目(前台采用layui)+websocket来统一管理,只要电脑能使用浏览器就ok
|
2018-12-29 15:54:44 +08:00
|
|
|
|
|
2019-02-22 17:28:33 +08:00
|
|
|
|
![logo](/doc/logo.png)
|
|
|
|
|
|
2019-02-26 09:11:02 +08:00
|
|
|
|
#### 你为什么需要Jpom
|
|
|
|
|
|
|
|
|
|
> SpringBoot、Jboot等框架开发的项目通常是以Jar的方式在后台运行的,如果只有一两个项目,管理起来不是太麻烦,但是当项目多了以后,管理起来就不是那么方便了,当项目出现问题时,能够通过Jpom即时排查问题,问题解决后还可以直接上传修改后的Jar,项目的堆栈信息,服务器CPU、内存使用情况一目了然,不必再登录服务器管理,简直方便的不得了。
|
|
|
|
|
|
|
|
|
|
> 当多个项目运行在同一台服务器时,运维人员通常也不只一个,如果每个人都登录服务器管理项目,难免会造成一些不必要的麻烦,甚至给服务器的安全性带来问题(服务器密码知道的人越多,越容易泄露),因为不需要登录服务器管理项目,维护人员不需要知道服务器的登录密码,只需要有Jpom的账号就行,Jpom本身可以通过权限管理,给不同用户不同的权限,这样也使得项目的稳定性得到提升。
|
|
|
|
|
|
2018-12-29 15:54:44 +08:00
|
|
|
|
#### 项目主要功能
|
2019-02-22 13:32:24 +08:00
|
|
|
|
|
2018-12-29 15:54:44 +08:00
|
|
|
|
1. 创建、修改、删除项目
|
|
|
|
|
2. 实时查看控制台
|
|
|
|
|
3. jar包文件夹管理
|
|
|
|
|
4. cpu、ram 监控
|
|
|
|
|
5. 导出堆栈信息
|
|
|
|
|
6. 阿里云 CodePipeline + Oss在线管理
|
|
|
|
|
7. 多用户管理
|
|
|
|
|
8. 此项目完全不依赖数据库,随装随用
|
2018-12-29 15:58:07 +08:00
|
|
|
|
9. 整个服务器top监听
|
2019-02-22 13:32:24 +08:00
|
|
|
|
10. 查看项目运行进程占用的端口
|
2018-12-29 15:54:44 +08:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#### 项目截图
|
|
|
|
|
|
|
|
|
|
1. 创建项目
|
2019-01-04 15:29:36 +08:00
|
|
|
|
![创建项目](/doc/images/create.png)
|
2018-12-29 15:54:44 +08:00
|
|
|
|
|
|
|
|
|
2. 修改、删除项目
|
2019-01-04 15:29:36 +08:00
|
|
|
|
![修改、删除项目](/doc/images/edit_del.png)
|
2018-12-29 15:54:44 +08:00
|
|
|
|
|
|
|
|
|
3. 文件管理
|
2019-01-04 15:29:36 +08:00
|
|
|
|
![文件管理](/doc/images/file.png)
|
2018-12-29 15:54:44 +08:00
|
|
|
|
|
|
|
|
|
4. 项目列表
|
2019-01-04 15:29:36 +08:00
|
|
|
|
![项目列表](/doc/images/list.png)
|
2018-12-29 15:54:44 +08:00
|
|
|
|
|
|
|
|
|
5. 监控cpu 内存
|
2019-01-04 15:29:36 +08:00
|
|
|
|
![ 监控cpu 内存](/doc/images/cup_ram.png)
|
2018-12-29 15:54:44 +08:00
|
|
|
|
|
|
|
|
|
6. 控制台日志实时查看
|
2019-01-04 15:29:36 +08:00
|
|
|
|
![控制台日志实时查看](/doc/images/console.png)
|
2018-12-29 15:54:44 +08:00
|
|
|
|
|
|
|
|
|
7. 用户管理
|
2019-01-04 15:29:36 +08:00
|
|
|
|
![用户管理](/doc/images/user_list.png)
|
2018-12-29 15:58:07 +08:00
|
|
|
|
|
|
|
|
|
8. top监听
|
2019-01-04 15:29:36 +08:00
|
|
|
|
![top监听](/doc/images/top.png)
|
2018-12-29 15:54:44 +08:00
|
|
|
|
|
2019-02-22 14:54:19 +08:00
|
|
|
|
9. 查看项目占用的端口情况
|
|
|
|
|
|
|
|
|
|
![查看项目占用的端口情况](/doc/images/port.png)
|
|
|
|
|
|
2019-01-03 17:43:53 +08:00
|
|
|
|
### 下载安装
|
|
|
|
|
|
2019-02-22 22:32:07 +08:00
|
|
|
|
1. 下载安装包 [https://gitee.com/keepbx/jpom/attach_files](https://gitee.com/keepbx/jpom/attach_files)
|
2019-01-03 17:52:30 +08:00
|
|
|
|
2. 上传到服务解压到根目录
|
2019-02-22 22:32:07 +08:00
|
|
|
|
3. 执行目录下[run.sh](/bin/run.sh)文件(记得给命令文件添加权限奥[*chmod 755 /jpom/run.sh*])
|
2019-02-22 12:07:20 +08:00
|
|
|
|
如
|
2019-01-03 17:55:28 +08:00
|
|
|
|
```
|
2019-01-04 15:41:00 +08:00
|
|
|
|
/jpom/run.sh start
|
2019-01-03 17:55:28 +08:00
|
|
|
|
```
|
2019-02-22 12:07:20 +08:00
|
|
|
|
4. 如有需要修改项目端口请查看 run.sh
|
2019-01-02 10:52:16 +08:00
|
|
|
|
### 编译安装
|
|
|
|
|
|
2019-02-22 22:34:10 +08:00
|
|
|
|
访问[Jpom](https://gitee.com/keepbx/jpom)的码云主页,拉取最新完整代码:
|
2019-02-22 12:07:20 +08:00
|
|
|
|
|
|
|
|
|
1. 项目运行日志目录确认,如需修改请查看[/src/main/resources/logback-spring.xml](/src/main/resources/logback-spring.xml)(默认:/jpom/log/)
|
|
|
|
|
2. 进入项目目录执行,然后在目录中查看 target/jpom-x.x-release
|
2019-01-03 17:55:28 +08:00
|
|
|
|
```
|
|
|
|
|
mvn package
|
|
|
|
|
```
|
2019-02-22 12:07:20 +08:00
|
|
|
|
3. 打包上传服务器运行
|
2019-02-22 14:45:04 +08:00
|
|
|
|
4. 命令运行
|
2019-01-03 19:34:46 +08:00
|
|
|
|
|
|
|
|
|
### 编译运行
|
|
|
|
|
|
2019-02-22 22:32:07 +08:00
|
|
|
|
访问[Jpom](https://gitee.com/keepbx/jpom)的码云主页,拉取最新完整代码:
|
2019-02-22 12:07:20 +08:00
|
|
|
|
|
|
|
|
|
1. 运行*cn.keepbx.jpom.JpomApplication*
|
|
|
|
|
2. 浏览器访问
|
2019-01-02 10:52:16 +08:00
|
|
|
|
|
2019-01-03 19:53:36 +08:00
|
|
|
|
### 阿里云CodePipeline 配置
|
|
|
|
|
|
2019-01-16 10:23:35 +08:00
|
|
|
|
[查看文档](/doc/CodePipeline-Oss.md)
|
2019-01-03 19:53:36 +08:00
|
|
|
|
|
2019-01-02 10:52:16 +08:00
|
|
|
|
### 贡献人员
|
2018-06-25 22:55:37 +08:00
|
|
|
|
|
2019-01-02 10:26:08 +08:00
|
|
|
|
1. [F7575](https://gitee.com/F7575)
|
|
|
|
|
2. [bwcx_jzy](https://gitee.com/jiangzeyin)
|
|
|
|
|
3. [arno](https://gitee.com/arnohand)
|
|
|
|
|
|
2019-01-02 10:52:16 +08:00
|
|
|
|
### 感谢
|
2019-01-04 14:48:48 +08:00
|
|
|
|
Jpom使用以下开源项目
|
2019-01-02 10:26:08 +08:00
|
|
|
|
- [Spring Boot](https://github.com/spring-projects/spring-boot):核心框架
|
2019-02-22 22:32:07 +08:00
|
|
|
|
- [Fast-Boot](https://gitee.com/keepbx/common-parent):针对SpringBoot 封装的一系列的快捷包 提供公共的Controller、自动化拦截器、启动加载资源接口、线程池管理
|
2019-01-04 15:41:00 +08:00
|
|
|
|
- [Fastjson](https://github.com/alibaba/fastjson):用于Java的快速JSON解析器/生成器
|
2019-01-04 18:20:33 +08:00
|
|
|
|
- [Hutool](https://gitee.com/loolly/hutool):一个Java工具包,也只是一个工具包,它帮助我们简化每一行代码,减少每一个方法,让Java语言也可以“甜甜的”
|
2019-01-02 10:52:16 +08:00
|
|
|
|
- [Layui](https://gitee.com/sentsin/layui):前端UI框架
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
### 提供bug反馈或建议
|
|
|
|
|
|
2019-02-22 22:32:07 +08:00
|
|
|
|
- [码云](https://gitee.com/keepbx/jpom/issues)
|
2019-01-02 10:52:16 +08:00
|
|
|
|
|
|
|
|
|
### 贡献代码
|
2019-01-04 11:56:36 +08:00
|
|
|
|
欢迎任何人为Jpom添砖加瓦,贡献代码
|
2019-01-04 14:50:27 +08:00
|
|
|
|
|
|
|
|
|
### 交流讨论
|
|
|
|
|
|
|
|
|
|
QQ群:[136715345](https://shang.qq.com/wpa/qunwpa?idkey=93ff8d8a37a436b752fe38d32075bb1b32a8e0b3d3ff19d0b541ca840433f561)
|
2019-02-22 12:07:20 +08:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
### 常见问题
|
2019-02-22 13:32:24 +08:00
|
|
|
|
|
2019-02-22 14:45:04 +08:00
|
|
|
|
1. 如何修改程序运行端口:修改管理程序命令文件中 --server.port=2122
|
2019-02-22 12:07:20 +08:00
|
|
|
|
2. 如何修改程序日志路径:建议自行编译安装修改 [/src/main/resources/logback-spring.xml](/src/main/resources/logback-spring.xml) 文件
|
2019-02-22 14:45:04 +08:00
|
|
|
|
3. 如何修改回话超时时长:在管理程序命令文件中 ARGS 变量添加 --tomcat.sessionTimeOut=1800
|
2019-02-22 22:38:39 +08:00
|
|
|
|
|
|
|
|
|
### 开发计划
|
|
|
|
|
1. 兼容windows 服务器
|
|
|
|
|
2. 不同用户授权不同项目
|
|
|
|
|
3. 主要管理页面兼容移动端
|