在CentOS上搭建持续集成环境

发布时间 - 2025-08-03 00:00:00    点击率:

在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项目

    • 点击“新建任务”,输入项目名称,选择“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的持续集成环境。实际部署过程中可根据业务需求灵活调整相关配置。


# linux  # python  # centos  # git  # docker  # 操作系统  # 浏览器  # red  # var  # gitlab  # jenkins  # http  # https  # ssh  # unix  # 运行环境  # 首次  # 所需  # 可选  # 可以选择  # 过程中  # 并安装  # 解锁  # 时需  # 自动启动 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: Laravel如何实现API资源集合?(Resource Collection教程)  简单实现Android文件上传  laravel怎么用DB facade执行原生SQL查询_laravel DB facade原生SQL执行方法  如何快速搭建支持数据库操作的智能建站平台?  Laravel用户认证怎么做_Laravel Breeze脚手架快速实现登录注册功能  详解MySQL数据库的安装与密码配置  免费网站制作appp,免费制作app哪个平台好?  电商网站制作多少钱一个,电子商务公司的网站制作费用计入什么科目?  Laravel Debugbar怎么安装_Laravel调试工具栏配置指南  打造顶配客厅影院,这份100寸电视推荐名单请查收  移动端手机网站制作软件,掌上时代,移动端网站的谷歌SEO该如何做?  香港服务器部署网站为何提示未备案?  教学论文网站制作软件有哪些,写论文用什么软件 ?  JavaScript模板引擎Template.js使用详解  创业网站制作流程,创业网站可靠吗?  Laravel如何实现全文搜索_Laravel Scout集成Algolia或Meilisearch教程  javascript如何操作浏览器历史记录_怎样实现无刷新导航  大连 网站制作,大连天途有线官网?  Laravel怎么实现软删除SoftDeletes_Laravel模型回收站功能与数据恢复【步骤】  网站图片在线制作软件,怎么在图片上做链接?  Laravel如何发送邮件和通知_Laravel邮件与通知系统发送步骤  家族网站制作贴纸教程视频,用豆子做粘帖画怎么制作?  浅谈Javascript中的Label语句  深圳网站制作平台,深圳市做网站好的公司有哪些?  Java垃圾回收器的方法和原理总结  如何生成腾讯云建站专用兑换码?  Java遍历集合的三种方式  如何做网站制作流程,*游戏网站怎么搭建?  ChatGPT 4.0官网入口地址 ChatGPT在线体验官网  laravel怎么实现图片的压缩和裁剪_laravel图片压缩与裁剪方法  java获取注册ip实例  Laravel如何理解并使用服务容器(Service Container)_Laravel依赖注入与容器绑定说明  Laravel怎么实现支付功能_Laravel集成支付宝微信支付  Laravel路由怎么定义_Laravel核心路由系统完全入门指南  网易LOFTER官网链接 老福特网页版登录地址  高性价比服务器租赁——企业级配置与24小时运维服务  Laravel怎么使用artisan命令缓存配置和视图  网站制作壁纸教程视频,电脑壁纸网站?  Laravel Facade的原理是什么_深入理解Laravel门面及其工作机制  Laravel事件监听器怎么写_Laravel Event和Listener使用教程  android nfc常用标签读取总结  Laravel如何实现本地化和多语言支持?(i18n教程)  手机软键盘弹出时影响布局的解决方法  如何用wdcp快速搭建高效网站?  浅谈redis在项目中的应用  Laravel如何集成第三方登录_Laravel Socialite实现微信QQ微博登录  Laravel怎么实现微信登录_Laravel Socialite第三方登录集成  米侠浏览器网页图片不显示怎么办 米侠图片加载修复  Laravel如何实现模型的全局作用域?(Global Scope示例)  JavaScript常见的五种数组去重的方式