Arbess速成手册(14) - 集成GitLab实现Java项目自动化Gradle构建并主机部署

Arbess 是一款开源免费的 CI/CD 工具,工具支持免费私有化部署,一键安装零配置,页面设计简洁明了。本文将详细介绍如何安装Arbess、GitLab,并创建配置流水线实现 Java 项目Gradle构建并部署主机。

1、GitLab 安装与配置

本章节将介绍如何使用CentOS9搭建Gitlab服务器,并将代码存放在Gitlab服务器,提供给Arbess克隆源码。

1.1 安装

  • 安装基础依赖。

sudo yum update -y

sudo yum install -y curl policycoreutils-python-utils openssh-server perl

sudo systemctl enable --now sshd

  • 获取Gitlab安装包。

curl -LO https://packages.gitlab.cn/repository/el/8/gitlab-jh-17.7.0-jh.0.el8.x86_64.rpm

  • 安装Gitlab安装包。访问URL可以自己设置。

export EXTERNAL_URL="http://ip" && sudo rpm -ivh gitlab-jh-x.x.x.rpm

  • 安装完成之后,使用sudo gitlab-ctl status检查服务状态。
  • 浏览器访问配置的http://ip,使用用户名root,密码 /etc/gitlab/initial_root_password 中获取,进行登录。

1.2 配置

gitlab安装完成之后,可以将代码推送到仓库中,Arbess克隆源码需要创建GitLab的个人令牌,用于Arbess访问Gitlab。进入用户设置→访问令牌,按照需求创建创建访问令牌。

创建个人令牌

令牌创建完毕,请妥善保存好您的令牌。

个人令牌

2、Arbess 安装与配置

2.1 安装

本文以CentOS操作系统为例。

  • 下载,CentOS安装包下载地址:Arbess下载,点击CentOS下载,下载完成后得到类似tiklab-arbess-x.x.x.rpm的文件。
  • 安装,上传到服务器上,在文件同级目录执行以下命令安装。

rpm -ivh tiklab-arbess-x.x.x.rpm

  • 启动,系统默认安装路径为/opt目录,进入/opt/tiklab-arbess/bin目录下,执行./arbess start即可启动成功。

​启动Arbess

使用 http://ip:9200 进行访问。使用初始用户名密码admin\123456登录,首次登录需要修改管理员密码。成功登录后展示Arbess首页。

​Arbess首页

2.2 配置

Arbess流水线采用可视化设计,在流水线中可克隆Gitlab仓库代码,构建并进行主机部署。创建流水线,进入流水线设计页面进行操作。

2.2.1 配置GitLab任务

  • 配置GitLab服务集成

流水线配置GitLab源码任务之前,需要添加GitLab服务集成,在系统设置→集成与开放→服务集成页面添加相关服务。添加自建的Gitlab,授权类型选择自建Gitlab,填写名称、服务地址、AccessTocken(个人密钥)。

添加源码集成

  • 添加GitLab源码任务

服务集成添加完毕之后,进入流水线设计,点击新阶段→源码→GitLab。

添加GitLab源码

字段

描述

任务名称

任务名称清晰地标识项目或对象。

Git版本

Arbess所在服务器Git安装路径。

GitLab授权信息

私人令牌,AccessTocken。

仓库

选择授权信息后点击仓库,程序会自动获取凭证权限下的仓库列表,管理者只需选择需要配置的仓库即可。

分支

选择代码的分支。填写需要拉取远程仓库具体的分支,不填默认为master分支,填写错误会导致任务执行失败。

2.2.2 配置Gradle构建任务

源码配置完毕后,配置构建任务,Arbess支持多种构建方式,例如添加Gradle构建,点击新阶段→构建→Gradle构建。

​配置Gradle构建任务

字段

描述

任务名称

任务名称清晰地标识项目或对象。

项目地址

代码存放路径,默认为${DEFAULT_CODE_ADDRESS},即源码拉取存放路径,也可输入绝对路径。

执行命令

执行Gradle构建的命令。

2.2.3 配置主机部署任务

点击新阶段→部署→主机部署,输入部署信息,输入完成后,点击空白处进行保存。

配置主机部署任务

字段

描述

任务名称

任务名称清晰地标识项目或对象。默认主机部署。

部署方式可选择结构化部署或者自定义命令部署。

主机地址

部署主机远程SSH认证凭证。

部署文件

需要部署的文件,可以写绝对路径,也可以写泛路径,泛路径需要配合部署文件规则来匹配到部署文件。
部署文件匹配规则文件匹配规则,支持正则表达式。

部署位置

部署远程主机位置。

部署命令

文件部署命令。

3、运行流水线

  • 运行流水线

多台主机部署完成后,点击右上角运行,验证流水线运行情况。

运行流水线

点击任务日志,可查看任务实时日志,点击对应任务,可查看任务相关日志。

查看运行日志

查看详细日志

  • 查看运行历史

可以在Arbess历史页面查看到流水线运行历史。点击运行历史序号,即可查看详细的运行日志。也可以在历史页面进行回滚。

运行历史

至此,用户可通过Arbess流水线克隆GitLab仓库Java源码,Gradle构建并进行主机部署。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/1124640.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

消防应急款手持气象仪:在突发事故现场快速获取关键气象参数

消防应急手持气象站是专为消防救援、灾害应急等场景设计的便携式气象监测设备,能够在突发事故现场快速获取关键气象参数,为救援指挥提供实时数据支持。该设备集成了多项气象传感器,具备轻量化、高精度、快速响应等特点,适用于火灾…

基于Spring Boot框架的医疗废弃物收运管理系统的设计与实现

第3章 系统分析 系统分析是软件开发的关键。但在实际工作中却往往容易被人们忽视或误解。其实需求分析在软件开发过程中起着重要作用,它不仅为软件产品提供了一个基本框架和基础结构,而且还能够提高软件开发效率及质量。大多数软件的故障都是由于需求分…

2.38 AR、MA、ARMA、ARIMA模型详解:时间序列分析的四大经典模型

2.38 AR、MA、ARMA、ARIMA模型详解:时间序列分析的四大经典模型 引言 AR、MA、ARMA、ARIMA是时间序列分析的四大经典模型,是理解时间序列预测的基础。本文将深入解析这四种模型的原理、区别和应用场景。 一、模型概述 1.1 四种模型 #mermaid-svg-PDybQovWhPr1VYff{font-f…

程序员必看!Google最新报告:AI不是来替代你的,而是来给你发升级包的!

那天下午,95后实习生突然跑来问:“我是不是该转行了?” 她刚看完一则新闻:某互联网大厂用AI客服系统替代了80%的人工客服。 我笑了笑,给她看了Google刚发布的《2026年AI Agent趋势报告》。看完后,她眼睛亮 …

收藏!小白程序员必看:智能体工程入门指南,把LLM打造成生产级可靠应用

智能体工程,本质是把“不确定性”的大语言模型(LLM),通过持续迭代优化成“可靠可用”的生产级应用的过程。它不是单一技术,而是产品思维、工程技术与数据科学三大能力的融合体。和传统软件开发相比,它的核心…

Java程序员如何备战金三银四?

很多人都说八股文没用,这里聊一下我对八股文的一些看法吧:一个知识点,你能把使用以及原理说出来,我称之为八股,但是你能把底层关联以及业务使用,优化历程也能搞清楚,我称之为能力;这…

基于Spring Boot的城市郊野公园管理系统的设计与实现

2系统分析 2.1需求分析 需求分析做为手机软件整体规划环节和项目生命周期的关键一部分,应当是“实现什么东西”而不是“实现”[5]。根据开发者对调研分析关键点、作用、特性、稳定性的掌握,将用户的无形要求转换为有形的界定,以便确定系统的运…

2.39 ARIMA实战:用Python对沪市指数进行预测,附完整代码

2.39 ARMA/ARIMA实战:用Python对沪市指数进行预测,附完整代码 引言 本文通过沪市指数预测实战案例,演示如何使用ARMA/ARIMA模型进行时间序列预测。从数据获取、模型训练到预测,提供完整的代码实现。 一、数据准备 1.1 获取股票数据 # 获取沪市指数数据 def get_stock_…

Arbess速成手册(15) - 集成GitLab实现Java项目自动化构建并多主机同时部署

Arbess 是一款国产开源免费的 CI/CD 工具,工具轻量、简洁。本文将详细介绍如何安装Arbess、GitLab,并创建配置流水线实现多主机同时部署。 1、Gitlab 安装与配置 本章节将介绍如何使用CentOS9搭建Gitlab服务器,并将代码存放在Gitlab服务器&…

AI也要“外挂“?揭秘Agent架构三大神器,让ChatGPT秒变项目经理,小白也能秒变大神!

为什么 ChatGPT 有时候像个只会背书的书呆子,而 AutoGPT 或 Devin 却像个能干活的项目经理? 区别不在于模型本身(大脑都差不多),而在于外挂系统的设计。 让我们潜入 Agent 的机箱内部。01. Planning(规划&a…

基于Spring Boot的博客系统的设计与实现

3 系统需求分析 在当今的社会生活中,互联网已经变得非常普遍和重要。充分利用互联网大数据等技术可以解决很多问题。目前,博客管理也面临着自身的问题。根据这一普遍现象,该系统可以很好地解决这些问题[7]。系统中这二类用户的数据在系统中非…

Arbess速成手册(17) - 集成GitLab、SonarQube实现代码扫描通过后自动化构建并主机部署

Arbess 是一款开源免费的 CI/CD 工具,支持免费私有化部署,一键安装零配置。本文将详细介绍如何安装配置使用GitLab、SonarQube、Arbess系统,使用流水线拉取GitLab源码、使用SonarQube进行代码扫描,构建安装包并部署到远程主机。 …

科技赋能清洁升级 绿色守护厂区环境——靖江庆润固废引入明诺MN-S1800四轮扫地车助力环保作业

作为一家专注于固体废物治理、水污染治理、大气污染治理等领域的环保企业,靖江庆润固废处置有限公司始终秉持“绿色发展、环保先行”的经营理念,在致力于各类固废无害化处置与资源回收利用的同时,高度重视厂区作业环境的优化提升。近日&#…

基于大数据的热门旅游景点推荐系统

第3章 系统需求分析 3.1 可行性分析 本章着重于进行可行性分析,旨在全面评估现有技术实现预期目标的可能性,以及系统能否满足用户的具体需求。通过多维度考量,我们能够及时发现并修正项目中的潜在风险,从而有效减少不必要的损耗&a…

AI Agent = 最强大脑 + 记性超好 + 计划周密 + 手脚麻利!编程开发新纪元,小白也能秒变大神!

一句话定义:AI Agent 最强大脑 记性超好 计划周密 手脚麻利!那么,如何系统的去学习大模型LLM? 作为一名深耕行业的资深大模型算法工程师,我经常会收到一些评论和私信,我是小白,学习大模型该…

Arbess速成手册(16) - 集成GitHub实现Java项目自动化构建并Docker部署

Arbess 是一款国产开源免费的 CI/CD 工具,支持免费自动化部署,一键安装零配置。本文将详细介绍如何安装并使用ArbessGitHub实现Docker项目自动化构建部署。 1、GitHub 配置 本章节将介绍如何创建GitHub个人访问令牌,提供给Arbess克隆源码。…

springboot基于JAVA的航空机票预定管理系统

3 系统分析 3.1可行性分析 在开发系统以前,必须对系统开展可行性研究,目地是用有效的方法处理最大的问题。程序流程一旦开发出去满足用户的要求,便会产生许多益处。下面咱们就从技术性、操作、经济、法律等领域来挑选这一系统是不是会最后开发…

2KW-5KW电机控制器全套方案:电摩与电动三轮车控制器硬件原理图及MATLAB建模C代码业内领先

2KW 3KW 5KW电机控制器 电摩控制器 电动三轮车电机控制器 全套方案 硬件原理图 PCB源代码 采用MATLAB建模,并生成C代码 业内领先。 市面上搞电动车控制器开发的兄弟都懂,电机控制这玩意儿既要硬件底子扎实又得玩转算法。最近捣鼓了个支持2KW到5KW功率的通…

基于Spring Boot 悦己美容院后台管理系统的设计与实现

2系统需求分析 需求分析的首要是要分析用户的需求,知道用户存在的一些情况,并且要明确用户的使用状况,然后设计规划解决的问题。其中在使用定性的分析以及定量的分析,从这两个方面获取用户的需求。一方面定性的分析获得的应该是用…

运营同事最爱:一键批量生成海报/水印/尺寸适配

运营需求的本质:同一套模板 + 多条数据 + 多平台尺寸 → 输出一堆一致、可追溯的素材包。 你要做的不是“脚本”,而是模板化流水线(Poster Pipeline)。 1)目标与边界:把需求拆成 4 个稳定模块 模板渲染:背景 + 文案 + 图片(logo/角标) + 二维码 水印系统:文字/图片水印…