部署 Kong
这是一份在 Kubernetes 中部署 Kong 网关的配置笔记,重点放在 hostNetwork 模式下如何同时兼顾网关性能、本机 PostgreSQL 连接和外部访问安全。配置先用 Secret 保存 pg_password,再通过 Job 执行 kong migrations bootstrap 初始化数据库,随后在 Deployment 中设置 KONG_DATABASE、KONG_PG_HOST、KONG_PG_USER、KONG_PG_DATABASE 等环境变量,让 Kong 直接连接宿主机 127.0.0.1:5432 上的 postgres 数据库。网关容器启用 hostNetwork 并配合 ClusterFirstWithHostNet,代理端口只开放 0.0.0.0:8000,而 Admin API 和 Admin GUI 分别限制在 127.0.0.1:8001 与 127.0.0.1:1337,避免管理端口被公网直接访问。由于 Kong UI 默认没有账号体系,文章给出 Nginx 反代方案,通过 auth_basic 和 .htpasswd 为 kong-ui 域名增加访问保护,并将 /manager-api/ 转发到本地 8001,根路径转发到本地 1337,其中 proxy_pass 末尾斜杠被特别标注为关键细节。另一组 Nginx 配置用于 api 域名,将外部 HTTPS 请求转发到本地 8000 的 Kong Proxy,同时保留真实 IP、WebSocket Upgrade、关闭代理缓冲和上传大小设置。适合需要在单机或混合 Docker/K8s 环境中部署 Kong、使用本机数据库并通过 Nginx 统一暴露 UI 与 API 的后端和运维读者参考。



