0

0

在CentOS上搭建持续集成环境

星降

星降

发布时间:2025-08-03 09:24:42

|

976人浏览过

|

来源于php中文网

原创

centos系统上构建持续集成环境,可以选择使用jenkins或gitlab ci/cd。以下是完整的操作流程:

通过Jenkins搭建持续集成平台

  1. 安装Jenkins

    • 安装前需要确保系统已配置好JDK运行环境。
    • 添加Jenkins官方yum源:
      sudo wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat-stable/jenkins.repo
    • 导入Jenkins的GPG密钥:
      sudo rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io.key
    • 使用yum命令安装Jenkins:
      sudo yum install jenkins
    • 启动Jenkins服务,并设置开机自动启动:
      sudo systemctl start jenkins
      sudo systemctl enable jenkins
  2. 配置Jenkins

    • 首次访问Jenkins时需要输入初始密码,该密码位于
      /var/lib/jenkins/secrets/initialAdminPassword
      文件中。
    • 浏览器中打开服务器IP地址加端口8080(如http://your-server-ip:8080),解锁Jenkins并进行初始化配置,包括安装推荐插件和创建管理员账户。
  3. 安装必要的插件

    • 进入“Manage Jenkins” -> “Manage Plugins”,安装以下关键插件:
      • Docker Pipeline
      • Git
      • Blue Ocean(可选)
  4. 配置Docker支持

    • 在“Manage Jenkins” -> “Configure System”中,正确填写Docker服务地址(通常为unix:///var/run/docker.sock),测试连接成功后保存配置。
  5. 创建Pipeline项目

    云网OA
    云网OA

    采用JSP开发的办公自动化产品、基于B/S结构,运行环境:JDK v1.5、Tomcat v5.5、MySQL v4.1,三者均为以上版本其他相关内容:可视化流程设计: 流程支持串签、会签和分支流程,可以设置流程节点的修改、删除权限,并可指定流程中各个用户在表单中可以填写的域。智能表单所见即所得设计: 智能设计,自动在数据库中生成表格,方便优化程序 公共交流: 集论坛、博客、聊天室于一体文件柜:C

    下载
    • 点击“新建任务”,输入项目名称,选择“Pipeline”类型。
    • 在Pipeline部分选择“Pipeline script”,编写如下示例脚本:
      pipeline {
          agent any
          stages {
              stage('Build') {
                  steps {
                      echo 'Building'
                  }
              }
              stage('Test') {
                  steps {
                      echo 'Testing'
                  }
              }
              stage('Deploy') {
                  steps {
                      echo 'Deploying'
                  }
              }
          }
      }

使用GitLab CI/CD搭建CI/CD环境

  1. 安装GitLab

    • 安装所需依赖包:
      sudo yum install -y curl policycoreutils-python openssh-server
    • 启动SSH服务并设置开机自启:
      sudo systemctl start sshd
      sudo systemctl enable sshd
    • 安装Postfix邮件服务用于接收通知邮件:
      sudo yum install postfix
      sudo systemctl start postfix
      sudo systemctl enable postfix
    • 配置防火墙开放ssh、http、https服务:
      sudo firewall-cmd --permanent --add-service=ssh
      sudo firewall-cmd --permanent --add-service=http
      sudo firewall-cmd --permanent --add-service=https
      sudo firewall-cmd --reload
    • 添加GitLab CE仓库并安装GitLab社区版:
      curl https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.rpm.sh | sudo bash
      sudo yum install -y gitlab-ce
    • 修改配置文件
      /etc/gitlab/gitlab.rb
      中的
      external_url
      参数以设定访问地址。
  2. 配置GitLab Runner

    • 下载并安装gitlab-runner:
      sudo curl -L https://github.com/gitlab-org/gitlab-runner/releases/download/v12.2.0/gitlab-runner-linux-amd64.tar.gz | sudo tar xz
      sudo mv gitlab-runner /usr/local/bin/gitlab-runner
    • 注册Runner到GitLab实例:
      sudo gitlab-runner register --non-interactive --url http://gitlab.example.com --registration-token your-token

以上内容详细描述了如何在CentOS操作系统上分别部署Jenkins与GitLab CI/CD的持续集成环境。实际部署过程中可根据业务需求灵活调整相关配置。

相关专题

更多
k8s和docker区别
k8s和docker区别

k8s和docker区别有抽象层次不同、管理范围不同、功能不同、应用程序生命周期管理不同、缩放能力不同、高可用性等等区别。本专题为大家提供k8s和docker区别相关的各种文章、以及下载和课程。

252

2023.07.24

docker进入容器的方法有哪些
docker进入容器的方法有哪些

docker进入容器的方法:1. Docker exec;2. Docker attach;3. Docker run --interactive --tty;4. Docker ps -a;5. 使用 Docker Compose。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

494

2024.04.08

docker容器无法访问外部网络怎么办
docker容器无法访问外部网络怎么办

docker 容器无法访问外部网络的原因和解决方法:配置 nat 端口映射以将容器端口映射到主机端口。根据主机兼容性选择正确的网络驱动(如 host 或 overlay)。允许容器端口通过主机的防火墙。配置容器的正确 dns 服务器。选择正确的容器网络模式。排除主机网络问题,如防火墙或连接问题。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

399

2024.04.08

docker镜像有什么用
docker镜像有什么用

docker 镜像是预构建的软件组件,用途广泛,包括:应用程序部署:简化部署,提高移植性。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

437

2024.04.08

http500解决方法
http500解决方法

http500解决方法有检查服务器日志、检查代码错误、检查服务器配置、检查文件和目录权限、检查资源不足、更新软件版本、重启服务器或寻求专业帮助等。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

362

2023.11.09

http请求415错误怎么解决
http请求415错误怎么解决

解决方法:1、检查请求头中的Content-Type;2、检查请求体中的数据格式;3、使用适当的编码格式;4、使用适当的请求方法;5、检查服务器端的支持情况。更多http请求415错误怎么解决的相关内容,可以阅读下面的文章。

410

2023.11.14

HTTP 503错误解决方法
HTTP 503错误解决方法

HTTP 503错误表示服务器暂时无法处理请求。想了解更多http错误代码的相关内容,可以阅读本专题下面的文章。

1902

2024.03.12

http与https有哪些区别
http与https有哪些区别

http与https的区别:1、协议安全性;2、连接方式;3、证书管理;4、连接状态;5、端口号;6、资源消耗;7、兼容性。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

1991

2024.08.16

PHP WebSocket 实时通信开发
PHP WebSocket 实时通信开发

本专题系统讲解 PHP 在实时通信与长连接场景中的应用实践,涵盖 WebSocket 协议原理、服务端连接管理、消息推送机制、心跳检测、断线重连以及与前端的实时交互实现。通过聊天系统、实时通知等案例,帮助开发者掌握 使用 PHP 构建实时通信与推送服务的完整开发流程,适用于即时消息与高互动性应用场景。

11

2026.01.19

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
PostgreSQL 教程
PostgreSQL 教程

共48课时 | 7.4万人学习

Git 教程
Git 教程

共21课时 | 2.8万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号