Windows Docker Desktop无Minikube启用NGINX Ingress Controller问题
在Docker Desktop(Windows)Kubernetes中启用NGINX Ingress控制器
Minikube环境下启用NGINX Ingress的命令是:
minikube addons enable ingress
但Docker Desktop内置的Kubernetes无法使用该命令。你尝试的云环境部署清单会导致ingress-nginx-admission Secret缺失的错误,以下是适配Docker Desktop的解决方案:
正确部署步骤
使用Docker专属的部署清单
Docker Desktop属于本地单节点集群,应使用针对Docker环境的部署文件,执行以下命令:kubectl apply -f https://raw.githubusercontent.com/kubernetes/ingress-nginx/controller-v1.7.1/deploy/static/provider/docker/deploy.yaml修复Secret缺失问题(若仍报错)
如果部署后仍出现MountVolume.SetUp failed for volume "webhook-cert" : secret "ingress-nginx-admission" not found错误,手动生成所需Secret:# 生成自签名证书 openssl req -x509 -sha256 -nodes -days 365 -newkey rsa:2048 -keyout tls.key -out tls.crt -subj "/CN=ingress-nginx-admission" # 在ingress-nginx命名空间创建Secret kubectl create secret tls ingress-nginx-admission --key tls.key --cert tls.crt -n ingress-nginx验证部署
执行命令确认Ingress控制器Pod正常运行:kubectl get pods -n ingress-nginx当Pod状态显示为
Running时,部署完成。
内容的提问来源于stack exchange,提问作者eastwater
相关产品推荐
相关产品推荐

