该镜像是基于Google维护的Kubernetes版本Nginx Ingress控制器,专为Kubernetes集群设计,用于管理外部流量入口。作为Kubernetes官方推荐的入口控制器解决方案之一,它基于Nginx实现高性能的HTTP/HTTPS流量转发,是连接集群外部客户端与内部服务的关键组件。
推荐通过Kubernetes资源清单部署,官方提供的部署文件适用于大多数环境:
bash# 部署最新稳定版 kubectl apply -f https://raw.githubusercontent.com/kubernetes/ingress-nginx/controller-v1.8.2/deploy/static/provider/cloud/deploy.yaml
注意:部署文件路径可能随版本更新变化,请参考https://kubernetes.github.io/ingress-nginx/deploy/%E8%8E%B7%E5%8F%96%E6%9C%80%E6%96%B0%E9%83%A8%E7%BD%B2%E9%93%BE%E6%8E%A5
创建Ingress资源定义路由规则:
yamlapiVersion: networking.k8s.io/v1 kind: Ingress metadata: name: basic-ingress annotations: nginx.ingress.kubernetes.io/rewrite-target: /$2 nginx.ingress.kubernetes.io/ssl-redirect: "true" spec: ingressClassName: nginx # 指定使用nginx ingress控制器 tls: - hosts: - example.com secretName: example-tls-cert # 引用包含TLS证书的Secret rules: - host: example.com http: paths: - path: /service1(/|$)(.*) pathType: Prefix backend: service: name: service1 port: number: 80 - path: /service2 pathType: Prefix backend: service: name: service2 port: number: 80
Ingress资源注解(Annotations)
常用注解配置示例:
| 注解键 | 说明 | 示例值 |
|---|---|---|
nginx.ingress.kubernetes.io/rewrite-target | 路径重写目标 | /app$2 |
nginx.ingress.kubernetes.io/ssl-redirect | 强制HTTPS重定向 | "true" |
nginx.ingress.kubernetes.io/load-balancer-method | 负载均衡策略 | "ip_hash" |
nginx.ingress.kubernetes.io/proxy-body-size | 请求体大小限制 | "10m" |
nginx.ingress.kubernetes.io/rate-limit | 请求速率限制 | "rps=20 burst=40 nodelay" |
控制器配置(ConfigMap)
通过ConfigMap调整全局控制器配置:
yamlapiVersion: v1 kind: ConfigMap metadata: name: nginx-configuration namespace: ingress-nginx data: proxy-connect-timeout: "30s" # 后端连接超时时间 proxy-read-timeout: "120s" # 后端响应读取超时时间 client-body-buffer-size: "16k" # 客户端请求体缓冲区大小 http2-enable: "true" # 启用HTTP/2支持
检查控制器状态
bash# 查看控制器Pod状态 kubectl get pods -n ingress-nginx # 查看控制器服务(获取外部IP) kubectl get svc -n ingress-nginx ingress-nginx-controller
查看访问日志
bash# 查看控制器Pod日志 kubectl logs -n ingress-nginx <ingress-controller-pod-name> -f
bashkubectl delete -f https://raw.githubusercontent.com/kubernetes/ingress-nginx/controller-v1.8.2/deploy/static/provider/cloud/deploy.yaml
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录认证访问私有仓库
无需登录使用专属域名
Kubernetes 集群配置 Containerd
K3s 轻量级 Kubernetes 镜像加速
VS Code Dev Containers 配置
Podman 容器引擎配置
HPC 科学计算容器配置
ghcr、Quay、nvcr 等镜像仓库
Harbor Proxy Repository 对接专属域名
Portainer Registries 加速拉取
Nexus3 Docker Proxy 内网缓存
需要其他帮助?请查看我们的 常见问题Docker 镜像访问常见问题解答 或 提交工单
docker search 限制
站内搜不到镜像
离线 save/load
插件要用 plugin install
WSL 拉取慢
安全与 digest
新手拉取配置
镜像合规机制
manifest unknown
no matching manifest(架构)
invalid tar header(解压)
TLS 证书失败
DNS 超时
域名连通性排查
410 Gone 排查
402 与流量用尽
401 认证失败
429 限流
D-Bus 凭证提示
413 与超大单层
来自真实用户的反馈,见证轩辕镜像的优质服务