<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>CI/CD on 黄文卓 | DevOps Engineer</title><link>https://socake.github.io/tags/ci/cd/</link><description>Recent content in CI/CD on 黄文卓 | DevOps Engineer</description><generator>Hugo -- gohugo.io</generator><language>zh-CN</language><managingEditor>17691281867@163.com (Wenzhuo Huang)</managingEditor><webMaster>17691281867@163.com (Wenzhuo Huang)</webMaster><copyright>© 2026 Wenzhuo Huang</copyright><lastBuildDate>Thu, 30 Apr 2026 14:00:00 +0800</lastBuildDate><atom:link href="https://socake.github.io/tags/ci/cd/index.xml" rel="self" type="application/rss+xml"/><item><title>Playbook：让 DDL 风险在合并前可见——CI/CD 双 Stage Schema Check 设计</title><link>https://socake.github.io/playbook/schema-check-dual-stage-pipeline/</link><pubDate>Thu, 30 Apr 2026 14:00:00 +0800</pubDate><author>17691281867@163.com (Wenzhuo Huang)</author><guid>https://socake.github.io/playbook/schema-check-dual-stage-pipeline/</guid><description>很多团队把 schema diff 接进流水线后仍然出 DDL 事故——绿色构建 + warning 通知，没人读，等于没装。本文记录一套已经在 5 条主流水线（MySQL / PostgreSQL）上线两周的双 Stage 设计：pre stage 在 PR 阶段以 warning 模式跑，给开发者『提前修』的窗口；post stage 在合并到 PRE 后以 fail 模式跑，缺表/破坏性 DDL 直接阻塞 PRE → PROD 推进。给出完整 schema_check.py、ignore-rules.yaml、双 stage 云效 Flow YAML、GitHub Actions 等价实现、PR 评论机器人脚本、5 种 DDL 危险场景的 unit test、跨服务依赖图脚本，以及五个踩坑的完整修复与复现脚本。</description><media:content xmlns:media="http://search.yahoo.com/mrss/" url="https://socake.github.io/playbook/schema-check-dual-stage-pipeline/featured.jpg"/></item><item><title>Playbook：CI/CD 流水线模板化——3 个标准模板覆盖 80% 服务的端到端实战</title><link>https://socake.github.io/playbook/cicd-pipeline-templating/</link><pubDate>Thu, 30 Apr 2026 12:00:00 +0800</pubDate><author>17691281867@163.com (Wenzhuo Huang)</author><guid>https://socake.github.io/playbook/cicd-pipeline-templating/</guid><description>在 80+ 条流水线的体量下，每条服务自己拷一份 yaml 是工程债：字段命名漂移、改一次通知模板要改 80 处、新人不知道照哪条抄。本文把方案从「思路」推进到「拿来即用」：每个标准模板给完整 YAML（含 anchors / 变量组绑定 / 审批节点）、对应 GitHub Actions reusable workflow、Jenkins shared library；附 create-pipeline.sh 端到端脚本、变量组管理 API 调用、模板回归测试 dry-run；7 个云效官方文档不写的硬约束（schedule 不工作 / step envs 失效 / stage 间永远线性渲染等）每个含完整修复 + 通用结论。</description><media:content xmlns:media="http://search.yahoo.com/mrss/" url="https://socake.github.io/playbook/cicd-pipeline-templating/featured.jpg"/></item><item><title>Playbook：中等规模公司的完整 DevOps 流程——从代码提交到生产部署的全链路设计</title><link>https://socake.github.io/playbook/end-to-end-devops-pipeline/</link><pubDate>Thu, 30 Apr 2026 10:30:00 +0800</pubDate><author>17691281867@163.com (Wenzhuo Huang)</author><guid>https://socake.github.io/playbook/end-to-end-devops-pipeline/</guid><description>中等规模公司的 DevOps 体系最常见的两个症状：工具碎片化（GitLab + Jenkins + 手工 kubectl）和阶段衔接断裂（PR 慢、合并后部署延迟、监控滞后）。本文不讲入门概念，给一份真实可落地的全流程蓝图：开发者本机 → Git 提交 → 云效 / GitHub Actions CI（含 Schema Check 双 Stage）→ ECR/ACR → GitOps 仓库自动更新镜像 tag → ArgoCD 自动 sync → K8s 多集群部署 → Prometheus + Loki + 钉钉告警。每个环节标注用什么工具具体到版本号，关键集成点（ApplicationSet / Kustomize overlay / deploy.py）给完整可执行配置，配三个真实坑（GitOps 闭环缺口、deploy.py path-mode 切换混乱、多 ArgoCD 凭据路由），并给出 DORA 风格的 before/after 对比与采集脚本。可以把这篇当成整个 Playbook 系列的目录页。</description><media:content xmlns:media="http://search.yahoo.com/mrss/" url="https://socake.github.io/playbook/end-to-end-devops-pipeline/featured.jpg"/></item><item><title>Flagger 渐进式交付实战：金丝雀、蓝绿、A/B 与 Istio/NGINX/Gateway API 集成</title><link>https://socake.github.io/posts/flagger-progressive-delivery/</link><pubDate>Sat, 11 Apr 2026 10:00:00 +0800</pubDate><author>17691281867@163.com (Wenzhuo Huang)</author><guid>https://socake.github.io/posts/flagger-progressive-delivery/</guid><description>传统的 kubectl apply 发布方式让风险集中在发布那一刻。Flagger 通过指标驱动的渐进式切流（Canary Analysis），把风险摊到整个发布过程，异常自动回滚。本文基于官方文档，系统讲解 Canary CR 的完整字段、三种策略的配置模板、与 Istio/NGINX Ingress/Gateway API 的集成、自定义指标分析、自动化回滚机制，以及与 Argo Rollouts 的选型对比。</description><media:content xmlns:media="http://search.yahoo.com/mrss/" url="https://socake.github.io/posts/flagger-progressive-delivery/featured.jpg"/></item><item><title>FluxCD vs ArgoCD 深度对比与迁移实战：架构、语义、多租户与选型决策</title><link>https://socake.github.io/posts/fluxcd-vs-argocd-migration/</link><pubDate>Sun, 22 Mar 2026 10:00:00 +0800</pubDate><author>17691281867@163.com (Wenzhuo Huang)</author><guid>https://socake.github.io/posts/fluxcd-vs-argocd-migration/</guid><description>GitOps 的两条主流路线——FluxCD 与 ArgoCD——在架构、语义、运维成本和扩展性上有显著差异。本文基于官方文档和生产实战，按同步模型、应用抽象、多租户隔离、Helm 支持、可观测性、扩展机制逐项对比，给出选型决策树，并提供一套可复用的从 ArgoCD 迁移到 FluxCD 的操作手册。</description><media:content xmlns:media="http://search.yahoo.com/mrss/" url="https://socake.github.io/posts/fluxcd-vs-argocd-migration/featured.jpg"/></item><item><title>容器镜像构建优化：BuildKit、多阶段构建与供应链安全</title><link>https://socake.github.io/posts/container-image-build-optimization/</link><pubDate>Wed, 18 Mar 2026 10:00:00 +0800</pubDate><author>17691281867@163.com (Wenzhuo Huang)</author><guid>https://socake.github.io/posts/container-image-build-optimization/</guid><description>深入剖析容器镜像构建优化的每个环节：BuildKit 并行构建与 Secrets 注入、Go/Python/Node.js 多阶段 Dockerfile 模板、&amp;ndash;mount=type=cache 与远程缓存、Distroless vs Alpine 选型、dive 分析层内容，以及完整的供应链安全闭环（syft SBOM + Cosign 签名 + K8s 准入控制验签）。</description><media:content xmlns:media="http://search.yahoo.com/mrss/" url="https://socake.github.io/posts/container-image-build-optimization/featured.jpg"/></item><item><title>Dagger 实战：用代码而不是 YAML 编写 CI/CD</title><link>https://socake.github.io/posts/dagger-programmable-cicd/</link><pubDate>Wed, 21 Jan 2026 10:00:00 +0800</pubDate><author>17691281867@163.com (Wenzhuo Huang)</author><guid>https://socake.github.io/posts/dagger-programmable-cicd/</guid><description>每次迁移 CI 平台（Jenkins → GitLab → GitHub Actions → Tekton），业务流水线都要重写一遍。Dagger 的思路是：把流水线写成可移植的代码（Go/Python/TS），底层引擎负责执行和缓存，CI 平台只是调用方。本文讲清楚它怎么工作、什么时候值得引入。</description><media:content xmlns:media="http://search.yahoo.com/mrss/" url="https://socake.github.io/posts/dagger-programmable-cicd/featured.jpg"/></item><item><title>Tekton Pipelines 企业级落地：从 Task 抽象到供应链签名</title><link>https://socake.github.io/posts/tekton-pipelines-production/</link><pubDate>Thu, 15 Jan 2026 10:00:00 +0800</pubDate><author>17691281867@163.com (Wenzhuo Huang)</author><guid>https://socake.github.io/posts/tekton-pipelines-production/</guid><description>Jenkins 扛不动 K8s Native 的调度压力，GitLab Runner 又太 monolithic。Tekton 把 &amp;lsquo;CI job&amp;rsquo; 拆成 Task + Pipeline + PipelineRun 三层 CRD，所有执行都是 Pod，天然贴合 K8s。本文讲清楚它在企业里该怎么用——以及怎么避免把它用成 YAML 地狱。</description><media:content xmlns:media="http://search.yahoo.com/mrss/" url="https://socake.github.io/posts/tekton-pipelines-production/featured.jpg"/></item><item><title>发版回滚 SOP</title><link>https://socake.github.io/docs/cicd/%E5%8F%91%E7%89%88%E5%9B%9E%E6%BB%9Asop/</link><pubDate>Tue, 09 Dec 2025 16:00:00 +0800</pubDate><author>17691281867@163.com (Wenzhuo Huang)</author><guid>https://socake.github.io/docs/cicd/%E5%8F%91%E7%89%88%E5%9B%9E%E6%BB%9Asop/</guid><description>涵盖回滚判断标准、K8s/ArgoCD/配置各层回滚操作、数据库变更的前向修复 vs 回滚取舍，以及完整的值班人员操作 SOP 模板。</description></item><item><title>多环境发版策略设计</title><link>https://socake.github.io/docs/cicd/%E5%A4%9A%E7%8E%AF%E5%A2%83%E5%8F%91%E7%89%88%E7%AD%96%E7%95%A5/</link><pubDate>Tue, 09 Dec 2025 15:00:00 +0800</pubDate><author>17691281867@163.com (Wenzhuo Huang)</author><guid>https://socake.github.io/docs/cicd/%E5%A4%9A%E7%8E%AF%E5%A2%83%E5%8F%91%E7%89%88%E7%AD%96%E7%95%A5/</guid><description>覆盖环境划分标准、分支策略（GitFlow vs Trunk-based）、镜像 tag 策略、自动/手动审批节点、金丝雀发布、蓝绿部署，以及发版后验证 checklist。</description></item><item><title>Docker 镜像优化实践</title><link>https://socake.github.io/docs/cicd/docker%E9%95%9C%E5%83%8F%E4%BC%98%E5%8C%96/</link><pubDate>Tue, 09 Dec 2025 14:00:00 +0800</pubDate><author>17691281867@163.com (Wenzhuo Huang)</author><guid>https://socake.github.io/docs/cicd/docker%E9%95%9C%E5%83%8F%E4%BC%98%E5%8C%96/</guid><description>覆盖多阶段构建、基础镜像选型（alpine/distroless/scratch）、layer 缓存优化、BuildKit cache mount、漏洞扫描等实战技巧，附优化前后对比数据。</description></item><item><title>ArgoCD + Kustomize GitOps 体系实践</title><link>https://socake.github.io/docs/kubernetes/argocd-gitops%E5%AE%9E%E8%B7%B5/</link><pubDate>Mon, 08 Dec 2025 14:00:00 +0800</pubDate><author>17691281867@163.com (Wenzhuo Huang)</author><guid>https://socake.github.io/docs/kubernetes/argocd-gitops%E5%AE%9E%E8%B7%B5/</guid><description>记录在多套 K8s 集群（AWS EKS + 阿里云 ACK）上落地 GitOps 的完整过程：目录结构设计、Kustomize overlay 环境差异管理、ArgoCD ApplicationSet 自动化、以及真实踩过的坑。</description></item><item><title>GitHub Actions CI/CD 实战：从镜像构建到 K8s 部署</title><link>https://socake.github.io/docs/cicd/github-actions-%E5%AE%9E%E6%88%98/</link><pubDate>Mon, 08 Dec 2025 10:00:00 +0800</pubDate><author>17691281867@163.com (Wenzhuo Huang)</author><guid>https://socake.github.io/docs/cicd/github-actions-%E5%AE%9E%E6%88%98/</guid><description>完整的 GitHub Actions CI/CD 流水线设计：Docker 多阶段构建优化、ECR 推送、Kustomize 更新 GitOps 仓库触发 ArgoCD 自动部署，以及多环境（QA/PRE/PROD）的分支策略。</description></item><item><title>DevSecOps 安全左移实践：从代码到生产的全链路安全</title><link>https://socake.github.io/posts/devsecops-practice/</link><pubDate>Wed, 20 Aug 2025 10:30:00 +0800</pubDate><author>17691281867@163.com (Wenzhuo Huang)</author><guid>https://socake.github.io/posts/devsecops-practice/</guid><description>安全不是最后一道关卡，而是嵌入每个研发环节的连续过程。本文从代码静态分析、依赖漏洞扫描、镜像安全、K8s 运行时防护到供应链签名，逐层拆解 DevSecOps 的完整实施路径，并给出一个可落地的流水线设计。</description><media:content xmlns:media="http://search.yahoo.com/mrss/" url="https://socake.github.io/posts/devsecops-practice/featured.jpg"/></item><item><title>ArgoCD 高级模式：ApplicationSet、Sync Waves 与 GitOps 企业级实践</title><link>https://socake.github.io/posts/argocd-advanced-patterns/</link><pubDate>Tue, 27 May 2025 11:01:00 +0800</pubDate><author>17691281867@163.com (Wenzhuo Huang)</author><guid>https://socake.github.io/posts/argocd-advanced-patterns/</guid><description>从 ApplicationSet 的四种 Generator 到 Sync Waves 控制数据库迁移顺序，再到 Image Updater 打通 ECR 自动触发 GitOps 流程，这篇文章覆盖 ArgoCD 在企业级多集群环境下的高级用法和常见陷阱。</description><media:content xmlns:media="http://search.yahoo.com/mrss/" url="https://socake.github.io/posts/argocd-advanced-patterns/featured.jpg"/></item><item><title>CI/CD 流水线设计：从代码提交到自动部署的工程化实践</title><link>https://socake.github.io/posts/cicd-pipeline-design/</link><pubDate>Sun, 09 Feb 2025 09:17:00 +0800</pubDate><author>17691281867@163.com (Wenzhuo Huang)</author><guid>https://socake.github.io/posts/cicd-pipeline-design/</guid><description>一条好的 CI/CD 流水线不只是「能跑」，而是快、可靠、边界清晰。本文从构建缓存到 GitOps 分工，从多分支策略到故障排查，整理了在实际项目中反复用到的工程化实践。</description><media:content xmlns:media="http://search.yahoo.com/mrss/" url="https://socake.github.io/posts/cicd-pipeline-design/featured.jpg"/></item><item><title>GitLab CI/CD + Kubernetes：从代码提交到生产部署全流程</title><link>https://socake.github.io/posts/gitlab-ci-kubernetes/</link><pubDate>Sat, 01 Feb 2025 11:01:00 +0800</pubDate><author>17691281867@163.com (Wenzhuo Huang)</author><guid>https://socake.github.io/posts/gitlab-ci-kubernetes/</guid><description>从 GitLab Runner 的 Kubernetes executor 配置，到 kaniko 替代 DinD 的镜像构建方案，再到通过更新 GitOps 仓库完成生产部署——记录一套在真实 AWS EKS 环境跑通的 CI/CD 全流程。</description><media:content xmlns:media="http://search.yahoo.com/mrss/" url="https://socake.github.io/posts/gitlab-ci-kubernetes/featured.jpg"/></item><item><title>Jenkins + Kubernetes：动态 Agent 构建与流水线最佳实践</title><link>https://socake.github.io/posts/jenkins-kubernetes-cicd/</link><pubDate>Sun, 26 Jan 2025 13:03:00 +0800</pubDate><author>17691281867@163.com (Wenzhuo Huang)</author><guid>https://socake.github.io/posts/jenkins-kubernetes-cicd/</guid><description>静态 Jenkins Slave 的资源浪费和配置混乱问题，在 Kubernetes 动态 Pod Agent 模式下得到根本解决。本文记录在真实生产环境中把 Jenkins 迁移到 K8s 的完整过程。</description><media:content xmlns:media="http://search.yahoo.com/mrss/" url="https://socake.github.io/posts/jenkins-kubernetes-cicd/featured.jpg"/></item></channel></rss>