戳下方名片,关注并星标

回复“1024”获取2TB学习资源!

👉体系化学习:运维工程师打怪升级进阶之路 4.0

—   特色专栏  —

MySQL / PostgreSQL / MongoDB

ElasticSearch / Hadoop / Redis

Kubernetes / Docker / DevOps

Kafka / RabbitMQ / Zookeeper 

监控平台 / 应用与服务 / 集群管理

Nginx / Git / Tools OpenStack

大家好,我是民工哥!

提到运维自动化,我们就不得不提起 Jenkins 这个工具,它是一个功能强大且灵活的持续集成工具,适用于各种规模的软件项目,并能够通过自动化和集成化的方式提高软件开发和测试的效率。

然而,并不是所有企业都适合使用 Jenkins,特别是在一些特定场景下,Jenkins 可能无法满足企业的需求或带来额外的挑战

比如:资源有限的小型企业或初创公司。

  • 部署和维护 Jenkins 可能会占用大部分甚至全部的服务器资源,影响其他应用的运行。

  • 学习成本高,Jenkins 的配置相对复杂,需要一定的学习和实践才能熟练掌握。投入大量时间和精力去学习Jenkins可能不太现实。

今天,民工哥给大家推荐一款比较适合小企业使用,比 Jenkins 更简单的一款项目构建和部署工具:Jpom!

5131db1b3c80f4779a14c77930f828b4.png

简介

Jpom是一款简而轻的低侵入式在线构建、自动部署、日常运维、项目监控软件,专为Java开发的项目设计。

e645248b5b6e15b9b2a4bb7028647603.png

适用场景:适用于中小团队,特别是那些需要自动化构建、部署和运维的Java项目。

整体架构9bf33bf5b2a2302f4e60d17755440167.jpeg

主要功能

46a7984028704e3b66ab613de4177440.png

项目管理
  • 创建与管理:允许用户创建和管理多个项目,并为每个项目配置不同的构建和部署规则。

  • 持续集成:支持从版本控制系统(如Git)自动拉取代码,并在每次提交或定时触发时执行构建任务。

  • 构建任务配置:用户可以配置编译、打包、测试、静态代码分析等构建任务,以及构建成功后的处理方式。

部署管理
  • 自动化部署:支持将构建好的应用程序部署到指定的服务器上,可以通过SSH、FTP等方式进行部署。

  • 多环境支持:支持开发环境、测试环境、生产环境等多个环境的配置和管理。

日常运维
  • SSH终端:在浏览器中执行SSH终端命令,方便进行日常运维操作,并记录执行命令的历史。

  • 文件管理:支持文件上传、下载、编辑等操作,方便管理项目文件。

项目监控
  • 实时监控:实时监控项目当前状态,如果发生异常则自动触发邮件、钉钉等报警通知。

  • 日志记录:记录构建和部署过程的详细日志信息,便于故障排查和监控。

用户与权限管理
  • 多用户管理:支持多用户管理,不同用户拥有不同的权限。

  • 操作日志:完善记录用户操作和管理日志,确保安全性和可控性。

插件扩展

插件机制:支持插件扩展机制,用户可以根据需要安装和使用各种插件,扩展系统的功能和灵活性。

优势特性

  • 低侵入式:尽可能减少对现有项目的改动和依赖。

  • 易用性:直观友好的Web界面,用户可以通过浏览器轻松管理项目、配置构建和部署任务。

  • 灵活性:支持多种构建和部署方式,以及多种版本控制系统和数据库,满足不同的需求。

安装使用

Jpom 默认使用 H2 数据库,也支持 mysql、postgresql、mariadb 数据库,可以根据实际的业务需求来选择相应的数据库。

需要安装 JDK8及以上版本的系统环境。推荐大家使用一键安装方式。

服务端

默认是将服务端安装到目录:/usr/local/jpom-server/,使用下面的命令进行安装:

[root@CentOS7-1 ~]# curl -fsSL https://jpom.top/docs/install.sh | bash -s Server

如果想要安装并添加到自启动服务里,使用下面的命令安装即可:

[root@CentOS7-1 ~]# curl -fsSL https://jpom.top/docs/install.sh | bash -s Server default
插件端

插件端安装到默认位置:/usr/local/jpom-agent/。安装命令如下:

[root@CentOS7-1 ~]# curl -fsSL https://jpom.top/docs/install.sh | bash -s Agent default

[root@CentOS7-1 ~]# curl -fsSL https://jpom.top/docs/install.sh | bash -s Agent default+service

也可以使用安装包来安装,Jpom 官方安装包下载地址:https://jpom.top/pages/all-downloads/,下载安装到系统目录后,解压,然后即可使用下面的命令进行启动服务端与插件端:

# 进入安装目录
cd /xxxxx
# 启动服务端
./bin/Server.sh start

# 进入安装目录
cd /xxxxx
# 启动插件端
./bin/Agent.sh start

服务启动成功后,Jpom 服务端监听端口是 2122,插件端默认运行端口:2123,这时我们可通过 http://server_ip:2122/ 访问管理页面。

使用操作展示

登录管理页面,会提示设置初始化系统账户,根据提示进行操作。

1b6432b8c7e6cd3b4edcc620cd975af9.png

Jpom 目前支持的登录方式有:

  • 账号+密码

  • 账户+密码+验证码

  • Oauth2

用户管理
添加用户/编辑用户

在初次添加用户您需要先创建权限组才能添加用户。

f0c85589d4f422846e6416f059aa99e2.png

权限组说明权限如下:

4df01ce1aa799623105ef6480823352c.png

逻辑节点

节点就是服务器,节点管理 > 逻辑节点 > 快速绑定,如下图:

ac7130176f8aebf44a1125e3a294dd30.png

如果没有安装插件端,进入之后可以复制快速安装命令来安装绑定:

7cd380a34cc7a421fd3d0b439d365890.png

最终等待执行结果,提示绑定成功即可:

35a1dc8659570a0ec75b455da149c604.png

点击节点后的管理菜单可以进入管理页面:

ac64fed99be790ac6e4159239c15acd6.png

项目管理

项目管理 > 项目列表 > 新增,可以进行新增项目操作,如下:

b5f6425c8f46aed0c909f4ec6adf6241.png

填写项目相关的信息即可,如下:

d1ea17300de6880110fa58c86318021b.png

仓库信息

构建的项目的仓库信息,需要我们手动添加,构建支持 git 仓库的拉取。

7939e5620b2a307117070da4b57e4fdc.png

构建列表

在线构建 > 仓库信息 > 构建列表 > 新增,如下:

94e6fb3bf455a637d452821698a10d2a.png

按提示填写相关的信息确定即可,如下:e20861a7b6847754f3688f70585cb8f7.jpeg

在线构建

点击在线构建 > 仓库信息 > 新增,如下:

b30734ee967541af7e7c021351cb4366.png

填写信息,点击确定,如下:

916c46bec93201b3067a80c9b439e025.png

点击构建 > 直接构建,开始构建和部署项目,如下:

713d4515c5640ec7891b8461d10dc22a.png

SSH 管理

930f92b79b44593440ca95d20d2b5e31.png

e988f451a3317cf1120ca3ec1ca52e36.png

脚本管理

0c5b7addf9c766a630a24e89d115dd33.png

监控管理

服务器的 CPU、内存、硬盘、网络流量、文件系统、网卡都支持实时查看,如下:2a542ec56c25a43d41f484730c214845.png30e040db13ad09dd5f7e214b36c21048.png

总结

Jpom 作为一款简而轻的低侵入式在线构建、自动部署、日常运维、项目监控软件,凭借其强大的功能、易用性、灵活性和活跃的社区支持,已经成为许多中小团队的首选工具。它能够帮助开发团队实现自动化构建、测试和部署,提高开发效率和软件质量。

👍 如果你喜欢这篇文章,请点赞并分享给你的朋友!

公众号读者专属技术群

构建高质量的技术交流社群,欢迎从事后端开发、运维技术进群(备注岗位,已在技术交流群的请勿重复添加微信好友)。主要以技术交流、内推、行业探讨为主,请文明发言。广告人士勿入,切勿轻信私聊,防止被骗。

扫码加我好友,拉你进群

c32ba280df0c1c4c322d4f1be030d7c7.jpeg

98950626953a0403035bc8e538455788.gif

阿里内部员工曝料:高德大调(裁)整(员)!

博通突然宣布!VMware 不再支持简体中文

腾讯突然宣布!彻底关停

突发!阿里云关停(澳大利亚、印度)数据中心

Oracle 砍掉  5000 人!

史无前例!微信输入法重磅更新,网友大赞好用

喜大普奔!Navicat 免费了!支持 MySQL、Redis等

3ca6dd1521a02d0349152a6bd9f39722.png

PS:因为公众号平台更改了推送规则,如果不想错过内容,记得读完点一下在看,加个星标,这样每次新文章推送才会第一时间出现在你的订阅列表里。点在看支持我们吧!

Logo

Kafka开源项目指南提供详尽教程,助开发者掌握其架构、配置和使用,实现高效数据流管理和实时处理。它高性能、可扩展,适合日志收集和实时数据处理,通过持久化保障数据安全,是企业大数据生态系统的核心。

更多推荐