1. 项目概述
作为一名长期奋战在DevOps一线的工程师,我最近深度体验了国产开源CI/CD工具Arbess与代码托管平台GitPuk的组合方案。这套工具链特别适合中小团队快速搭建私有化构建部署环境,今天就把我的实战经验完整分享给大家。
这套方案的核心价值在于:
- 完全开源免费,支持私有化部署,数据自主可控
- 从代码托管到构建部署全流程自动化
- 可视化流水线设计,降低CI/CD使用门槛
- 完美支持Java项目的Docker化部署
我将在CentOS 7.9环境下,带大家完成从零开始的环境搭建到最终自动化部署的全过程。过程中会重点说明那些官方文档没写但实际很重要的细节,比如SSH密钥配置技巧、Docker构建优化参数等。
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. 环境准备
2.1 基础环境要求
建议使用干净的CentOS 7.x/8.x系统,最小化安装即可。以下是具体配置要求:
-
服务器配置:
- CPU:2核以上(构建Java项目较吃资源)
- 内存:4GB以上
- 磁盘:50GB以上(Docker镜像会占用较多空间)
-
软件依赖:
- Git 2.0+
- Docker CE 20.10+
- JDK 8/11(根据项目需求)
- Maven 3.6+(Java项目需要)
提示:建议先使用
yum update -y更新系统,然后安装基础工具包:yum install -y wget curl vim net-tools
2.2 网络与防火墙配置
由于涉及多个服务间通信,需要确保以下端口开放:
| 服务 | 端口 | 说明 |
|---|---|---|
| GitPuk | 9800 | Web访问端口 |
| Arbess | 9200 | Web访问端口 |
| Docker | 2375 | Docker守护进程端口 |
| SSH | 22 | 代码拉取和部署使用 |
配置防火墙命令示例:
bash复制firewall-cmd --permanent --add-port=9800/tcp
firewall-cmd --permanent --add-port=9200/tcp
firewall-cmd --permanent --add-port=2375/tcp
firewall-cmd --reload
3. GitPuk安装与配置
3.1 安装GitPuk服务
- 下载最新RPM包(当前最新版为2.3.1):
bash复制wget https://download.tiklab.net/gitpuk/tiklab-gitpuk-2.3.1.rpm
- 安装并验证:
bash复制rpm -iv
