码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • 【CI/CD】GitLab-CI/CD


    目录

    一. CI/CD是什么

    二、CI/CD优点

    ​编辑 

    三、比较流行的实现方式

    1.通过三方软件以及配置

    2. Jenkins

    3,GitLab CICD

    四、 GitLab CI/CD介绍

    概念介绍:

    具体的使用方式:

    yml是什么:

    五、.gitlab-ci.yml 关键字介绍

    5.1 stages:

     5.2 Job

     5.3 script

     5.4 cache

    5.5  only/except

    5.6  variables

    5.7 when

    5.8 tags

    5.9 Pipeline

    六、GitLab-Runner

    6.1  安装Runner

    6.2 注册runner


    一. CI/CD是什么

    CI (Continuous Integration)  

    即持续集成,它是指频繁地(一天多次)将代码集成到主干,目的就为了让产品保证质量的同时快速迭代;通常它需要通过自动化测试,从而保证集成的代码的稳定性;

    CD (Continuous Delivery/Deployment)

    即持续交付/部署,可以看作持续集成的下一步,它指的是频繁地将软件的新版本,交付给质量团队or用户测试。如果测试通过,代码就可以部署到生产环境中。

    下面这个图,可以很直观的看出来

    二、CI/CD优点

    三、比较流行的实现方式

    1.通过三方软件以及配置

    例如Coding、阿里云云效等等 

    2. Jenkins

    Jenkins是一个开源的、提供友好操作界面的持续集成(CI)工具

    3,GitLab CICD

    Gitlab CI/CD内置于GitLab,是Gitlab一个简洁好用的的持续集成/持续交付/持续部署的框架

    四、 GitLab CI/CD介绍

    概念介绍:

    GitLab-CI 是GitLab提供的CI工具。它可以通过指定通过如push/merge代码、打tag等行为触发CI流程;同时也可以指定不同场景要触发的不同的构建脚本

    具体的使用方式:

    1. 在项目根目录中配置一个 .gitlab-ci.yml 文件来启动其功能        

    2.安装GitLab-Runner。Runner为运行工具,是用来运行 YML 文件指定的脚本内容

    yml是什么:

    YML文件格式是YAML (YAML Aint Markup Language)编写的文件格式,YAML是一种直观的能够被电脑识别的的数据数据序列化格式,并且容易被人类阅读, 容易和脚本语言交互的,

    YML文件的扩展名可以使用.yml或者.yaml

    以下为yaml的数据格式: 

    五、.gitlab-ci.yml 关键字介绍

    5.1 stages:

     5.2 Job

     5.3 script

     5.4 cache

    5.5  only/except

    5.6  variables

     5.7 when

    5.8 tags

     5.9 Pipeline

     

    其余更多的信息,可以学习官方文档

     https://docs.gitlab.com/ee/ci/ 

    六、GitLab-Runner

    6.1  安装Runner

    Runner 的安装方式有很多种,本次介绍的是使用docker安装

    1.编写文件

    2.执行docker-compose up

    1. version: '3'
    2. services:
    3. gitlab:
    4. image: 'gitlab/gitlab-runner:latest'
    5. container_name: gitlab-runner
    6. restart: always
    7. privileged: true
    8. volumes:
    9. - /etc/localtime:/etc/localtime
    10. - /var/run/docker.sock:/var/run/docker.sock
    11. - /usr/local/bin/docker-compose:/usr/local/bin/docker-compose
    12. - /usr/bin/docker:/usr/bin/docker
    13. - ./config:/etc/gitlab-runner
    14. - ./harbor:/root/harbor

    6.2 注册runner

    步骤:

    1,docker exec -it gitlab-runner gitlab-runner register
    2,输入url

    3,输入token

    4,输入description

    5,输入tags

    6,选择执行器

    当有了以上的准备:

    1,配置好 .gitlab-ci.yml 文件

    2,写好对应的脚本

    3,同时配置好 GitLab-runner 后

    就可以开启并体验 CI 流水线了。

    当提交代码后,就可以触发GitLab CI的Pipeline,并执行对应的stages及其jobs啦 

  • 相关阅读:
    动态分区算法(头歌实验)第1关:首次适应算法。第2关:最佳适应算法。
    漏洞预警|Apache MINA SSHD反序列化漏洞
    控制台警报:DevTools failed to load SourceMap
    PTA 7-77 查找指定字符
    解决express服务器接收post请求报错:“req.body==> undefined“
    前后端跨域请求问题解决方法
    学Python有什么好处?Python有哪些优点和特征?
    手把手教你Nginx常用模块详解之ngx_stream_ssl_module(七)
    公众号迁移多久可以完成?
    微信小程序轮问题集合
  • 原文地址:https://blog.csdn.net/weixin_36755535/article/details/126443178
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号