英文:
Docker Desktop on Windows11: kubectl get pods gives error on my laptop: The connection to the server 127.0.0.1:49994 was refused
问题
我想在本地运行Kubernetes,以便我可以在我编写的一个小Java程序上尝试它。
我在我的Windows 11笔记本电脑上安装了WSL2,Docker Desktop,并在Docker设置中启用了Kubernetes。
有许多与相同错误相关的Stack Overflow问题,但我没有看到其中任何一个涉及Windows 11和Docker Desktop的问题。
我打开一个终端,键入wsl
以打开Linux终端。然后我输入以下命令:
$ kubectl get pods
无法连接到服务器127.0.0.1:49994 - 您是否指定了正确的主机或端口?
但是我看到了下面的图片:
英文:
I want to run Kubernetes locally so I can try it out on a small Java program I have written.
I installed WSL2 on my Windows 11 laptop, Docker Desktop, and enabled Kubernetes in Docker Settings.
There are a number of SO questions with the same error but I do not see any of them regarding Windows 11 and Docker Desktop.
I open a terminal, type wsl
to open a linux terminal. Then I issue the command:
$ kubectl get pods
The connection to the server 127.0.0.1:49994 was refused - did you specify the right host or port?
but I see
答案1
得分: 1
使用Docker Desktop和Kubernetes在Linux Ubuntu上,我遇到了相同的错误,但也因为我已经在我的机器上安装了Docker而导致Docker Desktop无法正常启动,结果是docker上下文被设置为默认的Docker环境,而不是所需的Docker Desktop。
首先确认以下内容:
-
确保kubectl**已正确安装,并且~/.kube/config文件存在并在您的机器上正确配置,因为它包含集群信息的配置和连接端口,这两者都被kubectl使用。
-
使用以下命令检查上下文:
kubectl config view
-
如果未设置为current-context:docker-desktop,例如:
apiVersion: v1
clusters:
- cluster:
certificate-authority-data: DATA+OMITTED
server: https://kubernetes.docker.internal:6443
name: docker-desktop
contexts:
- context:
cluster: docker-desktop
user: docker-desktop
name: docker-desktop
current-context: docker-desktop
kind: Config
preferences: {}
users:
- name: docker-desktop
user:
client-certificate-data: REDACTED
client-key-data: REDACTED
然后将docker上下文设置为您的机器上的Docker Desktop
kubectl config use-context docker-desktop
如果这不能解决您的问题,也许您需要检查特定于Windows 11 Docker Desktop Kubernetes配置/功能。
还要检查:
Docker Desktop Windows常见问题解答
英文:
Using Docker Desktop and Kubernetes on Linux Ubuntu, I got the same error, but also with Docker Desktop being unable to start normally because I already had a Docker Installation on my machine, resulting in the docker context being set to the default Docker environment instead of the required Docker Desktop.
Confirm the following first:
-
Make sure kubectl is correctly installed and ~/.kube/config file exists and is correctly configured on your machine because it holds the configuration of the cluster info and the port to connect to, which both are used by kubectl.
-
Check the context with
kubectl config view
-
If not set to current-context: docker-desktop, for example
apiVersion: v1
clusters:
- cluster:
certificate-authority-data: DATA+OMITTED
server: https://kubernetes.docker.internal:6443
name: docker-desktop
contexts:
- context:
cluster: docker-desktop
user: docker-desktop
name: docker-desktop
current-context: docker-desktop
kind: Config
preferences: {}
users:
- name: docker-desktop
user:
client-certificate-data: REDACTED
client-key-data: REDACTED
then Set the docker context to Docker Desktop on your machine
kubectl config use-context docker-desktop
If that doesn't solve your issue maybe you have to check for specific Windows 11 Docker Desktop Kubernetes configuration/features
Check also:
Docker Desktop Windows FAQs
通过集体智慧和协作来改善编程学习和解决问题的方式。致力于成为全球开发者共同参与的知识库,让每个人都能够通过互相帮助和分享经验来进步。
评论