当前位置: 首页 > news >正文

Arbess从入门到实战(9) - 使用Arbess+GitLab实现PHP项目自动化部署

Arbess 是一款国产开源免费的 CI/CD 工具,工具轻量、简洁易用。本文将详细介绍如何安装Arbess、GitLab,并创建配置流水线实现 PHP 项目构建、部署。

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操作系统为例。

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

rpm -ivh --replacefiles --nodeps tiklab-arbess-x.x.x.rpm

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

​启动Arbess

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

​Arbess首页

2.2 配置

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

2.2.1 配置GitLab任务

  • 配置GitLab服务集成

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

添加源码集成

  • 添加GitLab源码任务

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

添加GitLab源码

字段

描述

任务名称

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

Git版本

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

GitLab授权信息

私人令牌,AccessTocken。

仓库

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

分支

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

2.2.2 配置PHP构建任务

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

​配置PHP构建任务

字段

描述

任务名称

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

项目地址

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

执行命令

执行PHP构建的命令。

2.2.3 配置主机部署任务

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

配置主机部署任务

字段

描述

任务名称

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

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

主机地址

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

部署文件

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

部署位置

部署远程主机位置。

部署命令

文件部署命令。

3、运行流水线

  • 运行流水线

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

运行流水线

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

查看运行日志

  • 查看运行历史

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

运行历史

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

http://www.dtcms.com/a/460746.html

相关文章:

  • .Net Core 在Linux系统下创建服务
  • Vue ASP.Net Core WebApi 前后端传参
  • IntelliJ IDEA 编译内存设置全攻略:Shared heap size vs User-local heap size 区别详解(2025版)
  • 恩施网站建设公司asp源码下载网站
  • 《考研408数据结构》第四章(串和串的算法)复习笔记
  • Git 完全指南:从入门到精通掌握版本控制
  • Git初识
  • 如何解决 pip install -r requirements.txt 报错 Git 未安装,无法处理 VCS URL(git+https://…)问题
  • ArcGIS Pro 进程管理:自动化解决方案与最佳实践
  • ASP.NET Core Web API 发布到 IIS 服务器
  • PostgreSQL + Redis + Elasticsearch 实时同步方案实践:从触发器到高性能搜索
  • AWS Lambda 学习笔
  • Vue 与.Net Core WebApi交互时路由初探
  • 怎么建立自己公司的网站软文营销案例分析
  • 深圳专业网站建设公司辽宁工程建设招标网
  • 抖音a_bogus参数加密逆向
  • 【网络编程】网络通信基石:从局域网到跨网段通信原理探秘
  • 百度免费做网站江苏鑫圣建设工程有限公司网站
  • 4. React中的事件绑定:基础事件;使用事件对象参数;传递自定义参数;同时传递事件参数和自定义参数
  • 解析Oracle 19C中并行INSERT SELECT的工作原理
  • SLAM-Former: Putting SLAM into One Transformer论文阅读
  • Vue3 + TypeScript provide/inject 小白学习笔记
  • 【开题答辩过程】以《基于springboot交通旅游订票系统设计与实现》为例,不会开题答辩的可以进来看看
  • 免费企业网站模板html北京网站制作设计价格
  • 网络编程(十二)epoll的两种模式
  • 某大厂跳动面试:计算机网络相关问题解析与总结
  • 服务器数据恢复—Raid5双硬盘坏,热备盘“罢工”咋恢复?
  • Vue2.0中websocket的使用-demo
  • 海外IP的适用业务范围
  • eBPF 加速时代,【深入理解计算机网络05】数据链路层:组帧,差错控制,流量控制与可靠传输的 10 Gbps 实践