我可以在 Docker for Mac 中使用不安全的 Kubernetes API 端点吗?



当我在 Docker for Mac 中运行 Kubernetes 时,Kube API 似乎只能从安全端点 https://localhost:6443/

使用 minikube,我能够为 Kube API 使用不安全的端点,例如 http://localhost:8080/

有没有办法在 Docker for Mac 的 Kubernetes 中使用不安全的 Kube API 端点?

您可能正在使用minikube运行旧版本的Kubernetes。

kube-apiserver 的默认不安全端口是 8080,但在 kube-apiserver 中的最新 Kubernetes 版本上禁用了该端口,标志为:--insecure-port=0

您始终可以从/etc/kubernetes/manifests/kube-apiserver.yaml文件中删除该行。

您还需要按照此--insecure-bind-address=0.0.0.0添加此选项。

然后重新启动 kube-apiserver。

提示:Docker/Kubernetes 在 Mac 上的 xhyve VM 上运行。因此,要修改 Kubernetes 配置,您必须连接到 xhyve VM。你可以这样做:screen ~/Library/Containers/com.docker.docker/Data/com.docker.driver.amd64-linux/ttyscreen ~/Library/Containers/com.docker.docker/Data/vms/0/tty

添加更多详细信息:因此,端口 6443 使用 vpnkit 转发到主机。要使端口 8080 在主机上可用,您还必须使用 vpnkit 公开该端口。如果筛选到 hyperkit vm,你将看到端口映射是在/var/vpnkit/port中定义的。该目录上有一个README文件,您可以按照该文件公开端口 8080。

最新更新