CICD 构建流程图运作
日志:loki + promtail + grafana 可以查看 k8s 和 infra 中所有容器的标准输出日志。 要实现这样的一个 cicd 系统,你至少需要 1 台 4g 内存的服务器运行 k8s,1 台 4g 内存的服务器运行基础设施。为了便于安装各种软件,强烈建议购买非大陆服务器,我现在主要使用野草云,香港服务器网络畅通、价格实惠、性能够用、...
使用GitLab、Jenkins和Kubernetes(k8s)来构建CI/CD解决方案的前提是已经有一套可以正常运行的Kubernetes集群,关于Kubernetes(k8s)集群的安装部署,可以查看博客《Centos7 安装部署Kubernetes(k8s)集群》https://www.cnblogs.com/renshengdezheli/p/16686769.html。
一、什么是CICD CIDI(Continuous Integration,Continuous Delivery & Deployment),持续集成,持续部署,持续发布。 也就是说,在本地开发完代码之后,push到远程仓库,然后代码打包、部署的这个过程完全是自动化完成的。 但是我们不要进入一个误区,CICD并不意味着一定就是这一套流程,只要实现了代码提交后自动部署即可,不管...
CI/CD流程图 jenkins-jenkins for k8s.drawio.png 流程说明 开发测试阶段 开发人员需求确定后,从master分支拉取最新代码,在dev分支完成开发后,将dev分支合并到test分支并推送至gitlab仓库。 Gitlab监听到test分支代码更新,请求jenkins的webhook地址,触发持续构建和持续部署流程,准备将代码部署至测试环境。
搭建平台目的: k8s中搭建jenkins master/slave架构,解决单jenkins执行效率低,资源不足等问题(jenkins master 调度任务到 slave上,并发执行任务,提升任务执行的效率) CI/CD环境特点: Slave弹性伸缩 基于镜像隔离构建环境 流水线发布,易维护 一
GitLab CI 是 GitLab 默认集成的 CI 功能,GitLab CI 通过在项目内 .gitlab-ci.yaml 配置文件读取 CI 任务并进行相应处理;GitLab CI 通过其称为 GitLab Runner 的 Agent 端进行 build 操作;Runner 本身可以使用多种方式安装,比如使用 Docker 镜像启动等;Runner 在进行 build 操作时也可以选择多种 build 环境...
一、纯 k8s 部署实现 gitlab CICD gitlab CICD k8s 安装 GitLab GitLab 具有三个需要进行持久化的目录,它们分别是 /etc/gitlab、/var/log/gitlab、/var/opt/gitlab,它们分别为 Gitlab 的运行提供配置、日志、数据的持久化。我们使用 nfs 来作为 GitLab 的持久化方式(当然,你也可以选择其他方式),...
| 步骤四 | CI提交镜像到容器仓库 | `docker push myapp:latest` | | 步骤五 | CD部署应用 | `kubectl apply -f deployment.yaml` | 接下来,让我们逐步介绍每个步骤以及需要使用的代码示例: ### 步骤一:提交代码到版本控制库 首先,开发人员需要将代码推送到版本控制库(如GitHub、GitLab等)。这里我们使用gi...