如何在使用Docker Desktop时修改`nodePort`范围?

3

我试图打开nodePort 80/443,但失败了,因为它超出了默认的nodePort范围。

解决方法是在静态pod kube-apiserver-docker-desktop中添加- --service-node-port-range选项。但我如何使用Windows上的Docker桌面修改静态pod?我尝试直接编辑这个pod但失败了。

kubectl edit pod kube-apiserver-docker-desktop -n kube-system

你找到解决方案了吗? - Jankiel Goldman
不,我没有找到修改nodePort范围的方法,但我将我的Ingress控制器服务类型更改为“LoadBalancer”以达到我的目标。 - FakeAlcohol
1个回答

阿里云服务器只需要99元/年,新老用户同享,点击查看详情
3
您需要运行一个特权的Docker容器:
$ docker run -it --privileged --pid=host debian nsenter -t 1 -m -u -n -i sh
然后在这里编辑Kubernetes配置:
$ vi /etc/kubernetes/manifests/kube-apiserver.yaml
在需要的端口列表中添加命令行参数:
        - --service-node-port-range=80-36000
这个StackOverflow问题解释了如何处理以下内容: Kubernetes配置目录的位置(在Windows上使用Docker桌面版)Location of Kubernetes config directory with Docker Desktop on Windows

$ k describe po/kube-apiserver-docker-desktop --namespace kube-system // --enable-admission-plugins=NodeRestriction,AlwaysPullImages - Jankiel Goldman

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,