Spring Boot 容器化与配置注入:多阶段构建 + ConfigMap/Secret 实战
Spring Boot 上 K8s 的第一课:打包镜像,注入配置 前面三篇用 nginx 把集群、Deployment、Service/Ingress 都打通了,但从这一篇开始,画风要变——主角换成真实的 Spring Boot 应用。毕竟我们是 Java 开发者,最终上云(ACK/AWS)跑的是自己的微服务,不是 nginx。这篇完成两件事:把 Spring Boot 应用容器化(多阶段构建 + 瘦身),再把配置从代码里搬到集群里(ConfigMap/Secret 注入)。学完你就掌握了"镜像一份,配置到处变"的核心玩法。 📌 前置知识:建议先读本系列前三篇(kind 集群搭建、Deployment 实战、Service/Ingress 实战),本文的操作都在同一套 kind 集群上进行,镜像预载( kind load )的原理不再展开。 这次要做什么 目标:把一个真实 Spring Boot 应用部署进 kind 集群,配置由集群注入 产出:多阶段构建的镜像 + ConfigMap/Secret 注入的配置 + 验证"配置覆盖代码默认值" 主角:k8s-demo-app(Spring Boot 3.3.5 / Java 17) 主角应用很小但五脏俱全:/api/hello 返回配置值和当前 Pod 名,Actuator 暴露健康检查端点(为下篇探针做准备),内置优雅停机配置(为下下篇做准备)。 前置条件 项 本次实测 集群 kind learn (1 主 2 从,K8s v1.36.1) 工具 docker + kubectl,宿主机 Docker 已配代理 网络 国内环境:构建期依赖下载走代理,镜像预载用 kind load 第1步:一个真实的 Spring Boot 应用 工程结构: ...