云原生:一张图了解devops 中CI/CD

一个典型的云原生应用的开发和部署过程,其中涉及到的主要工具有 Git、Docker、Jenkins/CircleCI、Ansible、Kubernetes 等。以下是每个步骤的简要说明:

  1. 开发人员(Developers)使用 Git 进行版本控制,他们将代码推送到 Git 仓库(push)。

  2. Jenkins/CircleCI 等持续集成工具从 Git 仓库拉取代码(pull),并触发构建和测试流程。

  3. 构建过程中会基于 Dockerfile 创建 Docker 镜像。Dockerfile 是一个文本文件,包含了如何构建 Docker 镜像的指令。

  4. 构建好的镜像会被推送到注册表(registry),如 Docker Hub 或私有的注册表。

  5. Kubernetes 从注册表中拉取镜像(pull),并将镜像部署到集群中。

  6. Ansible 负责自动化配置管理,它可以用来配置 Kubernetes 集群以及其他基础设施。

  7. 开发人员也可以使用 GitOps 方式来管理 Kubernetes 应用部署,即将 Kubernetes 配置文件(manifests)提交到 Git 仓库,然后由工具(如 Flux)自动同步到 Kubernetes 集群。

整个流程体现了 DevOps 的理念,强调了自动化和持续交付的重要性。开发者只需关注代码开发,而无需关心底层的基础设施和部署细节,因为这些都可以通过自动化工具来完成。这种模式有助于提高开发效率和稳定性,同时降低了维护成本。

相关推荐
人间打气筒(Ada)10 分钟前
Kubernetes核心技术-namespace & label
云原生·kubernetes·云计算·k8s·devops·namespace·label
小义_3 小时前
【Docker】知识八
linux·docker·云原生
开开心心_Every4 小时前
CDR版本转换工具,支持多版本互转免升级软件
linux·运维·服务器·云原生·edge·pdf·serverless
匀泪5 小时前
云原生(TOMCAT概述)
云原生·tomcat
礼拜天没时间.7 小时前
Docker Registry私有仓库搭建与使用
java·运维·docker·云原生·容器·centos
tritone7 小时前
初探云原生:在阿贝云免费服务器上学习负载均衡的实践心得
服务器·学习·云原生
nix.gnehc7 小时前
零基础部署K8s单节点集群:一键脚本实现快速落地
云原生·容器·kubernetes
hrhcode7 小时前
【云原生】四.Kubernetes核心对象(下):Deployment、Service与Namespace
云原生·k8s
何中应8 小时前
Jenkins常用的任务触发器
运维·ci/cd·jenkins
王德印8 小时前
工作踩坑之导入数据库报错:Got a packet bigger than ‘max_allowed_packet‘ bytes
java·数据库·后端·mysql·云原生·运维开发