流水线使用浅谈
使用总结 通过前面的分享,我已经在自己的环境中安装了gitlab-runner和jenkins,我以前用的是脚本全自动部署,所有操作都是由shell执行器完成,并没有涉及docker执行器。然后今天我就分享下,对于gitlab-runner执行器的一点认识。 jenkins和gitlab-ci 有读者有疑惑,为什么先用gitlab-ci而不是jenkins,我这里就来简单对比下,gitlab的流水线和jenkins的流水线。 安装和配置: GitLab CI:作为GitLab的一部分,安装简单,配置也较简单。 Jenkins:独立工具,安装和配置较复杂,需要配置各种插件和环境。 使用难度: GitLab CI:配置简单,YAML格式的配置文件,易上手,学习曲线平稳。 Jenkins:功能强大,但配置繁琐,需要编程来实现较复杂的任务,学习曲线较陡。 与源码管理的结合: GitLab CI:原生集成了Git,非常易于与GitLab仓库结合,可以自动检测仓库更改并运行流水线。 Jenkins:可以结合各种源码管理工具,但需要手动配置触发器来检测更改。 可扩展性: GitLab CI:可以安装GitLab Runner来扩展,支持与Kubernetes集成,较易于水平扩展。 Jenkins:本身支持分布式部署,有大量插件可以连接不同环境,扩展性高但复杂。 预置环境和资产: GitLab CI:没有预置的环境或资产,每次运行流水线时会创建独立环境。 Jenkins:有丰富的预置环境、凭证、缓存等资产,可以重复使用,但也增加了管理难度。 那么到底如何选择: GitLab CI简单易用,但功能略少,扩展和管理也相对简单。适用于中小型项目。 Jenkins功能强大,但较复杂,需要投入更多时间去管理与扩展。适用于大型项目。 两者可以很好地结合使用,例如使用GitLab CI进行 daily build,使用Jenkins进行发布管理。
使用JENKINS-2.401.1
gitlab-ci使用 接着上篇文章,先将项目上传至gitlab,其中包含编写ci文件,然后就会自动检测到并构建运行ci文件。 这个gitlab-ci文件要在项目中的根目录中,形式如: .gitlab-ci.yaml 在这个文件中,可以定义: 脚本 配置文件 命令 要部署到的环境位置 比如官方给的举例:
今日焦虑
嗨,写有质量的文章真难。还是慢慢磨吧!学习可以慢但不能停止。 写一两篇文章简单,持续输出就难。但也不能持续输出垃圾啊!
GITLAB-RUNNER跑起来!
CI/CD 总体概括 CI/CD 是持续集成(Continuous Integration)和持续部署(Continuous Delivery/Deployment)的缩写。 持续集成Continuous Integration 持续交付Continuous Delivery 持续部署Continuous Deployment
GITLAB-16.0.2!
安装gitlab-runner 中文版本官方文档: https://docs.gitlab.cn/runner/install/ 看官方文档,有以下理解: gitlab-runner开源,使用go编写,可以作为单个二进制文件运行,没有特定语言要求。 可以使用docker部署或者部署到k8s集群。 可以在linux、macos、freebsd、windows平台安装使用。 部署方式: 容器中 手动下载二进制文件 使用rpm包安装 注意:出于安全和性能原因,不应该在托管GitLab 实例的机器上安装GitLab Runner。 今天我们选择使用yum方式安装,因为是centos系统使用居多,用yum管理也比较方便。
代码仓库
目前已经复习了Linux、网络、前后端、docker以及k8s的基础知识,现在就是开始研究持续集成和持续部署也就是CI/CD,目前主流的就是gitlab+自带的cicd流程或者jenkins+docker/k8s作为实现手段,那我们首先安装gitlab,上传代码,然后安装gitlab-runner作为代码的运行环境。将代码部署到k8s集群中,实现快速的代码部署更新迭代,下面就来介绍,可能这篇文章无法全部写完,会持续输出。 gitlab安装 官方文档: https://docs.gitlab.com/ee/install/ 环境要求: 安装包约占2.5G存储空间,考虑使用LVM逻辑卷管理挂载硬盘空间 由于文件系统性能可能会影响 GitLab 的整体性能,不建议使用基于云的文件系统进行存储。 NFS 用于 Git 存储库存储已弃用。更多信息,参阅官方声明。
HARBOR-2.8.2更新快速搭建
Harbor更新了那些内容 组件更新 代理缓存收到太多请求错误(429)时返回错误 在 #2.8.2 版本中将发行版提升到 v2.8.0 修复:更新 TRIVYVERSION=v0.42.0 & TRIVYADAPTERVERSION=v0.
周末时光
周末的时间就是过的快,今天搭建了k8s最新版本的集群-1.27.3,整理了下文档。尽管现在都已经由自动化部署的脚本以及应用,但是自己手动搭建一下还是蛮有趣的。
不知所措
今日不知写点什么,有点焦绿!
K8S-1.27.3
在希里安公众号上!