欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 文旅 > 八卦 > 部署到 Kubernetes - 从 CI 迈向 CD

部署到 Kubernetes - 从 CI 迈向 CD

2025/6/18 23:22:37 来源:https://blog.csdn.net/weixin_42587823/article/details/148681194  浏览:    关键词:部署到 Kubernetes - 从 CI 迈向 CD

部署到 Kubernetes - 从 CI 迈向 CD


1. 准备 Kubernetes 部署清单

Kubernetes 是一个声明式的系统。我们不告诉它“如何做”,而是告诉它我们期望的“最终状态 (Desired State)”是什么。我们通过 YAML 清单文件来描述这个最终状态。

首先,在你的项目根目录下创建一个 k8s/ 文件夹,用于存放所有的 Kubernetes 配置文件。

k8s/deployment.yaml

这个文件定义了如何运行我们的应用 Pod。

apiVersion: apps/v1
kind: Deployment
metadata:name: sre-cicd-demo-app # Deployment 的名称
spec:replicas: 2 # 我们希望运行 2 个 Pod 副本以实现基本的高可用selector:matchLabels:app: sre-cicd-demo-apptemplate: # Pod 的模板metadata:labels:app: sre-cicd-demo-app # Pod 的标签,需要与 selector 匹配spec:containers:- name: app# 这里是关键!我们使用一个占位符,稍后将在 CI/CD 流水线中动态替换它image: ghcr.io/your-username/your-repo:placeholder ports:- containerPort: 3000

注意: 请将 ghcr.io/your-username/your-repo:placeholder 中的 your-username/your-repo 替换为你自己的 GitHub 用户名和仓库名。这个 :placeholder 标签非常重要,它是一个我们将要动态更新的目标。

k8s/service.yaml

这个文件定义了如何通过网络访问我们的应用 Pod。

apiVersion: v1
kind: Service
metadata:name: sre-cicd-demo-service
spec:selector:app: sre-cicd-demo-app # 这个 selector 会找到上面 Deployment 创建的 Podports:- protocol: TCPport: 80 # Service 暴露的端口targetPort: 3000 # Pod 容器实际监听的端口

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词