无法建立连接,因为目标计算机主动拒绝它。 “适用于Windows的Docker上的Kubernetes”

问题描述 投票:2回答:2

我安装了适用于Windows 18.05.0-ce(Windows 10 Hyper-V)的Docker的Edge版本,之后启用了Kubernetes。 在我的另一台机器上自动创建了kubectl上下文,但在这台新机器上却没有。

> kubectl config get-contexts
CURRENT   NAME      CLUSTER   AUTHINFO   NAMESPACE
> kubectl version
Client Version: version.Info{Major:"1", Minor:"10", GitVersion:"v1.10.3", GitCommit:"2bba0127d85d5a46ab4b778548be28623b32d0b0", GitTreeState:"clean", BuildDate:"2018-05-21T09:17:39Z", GoVersion:"go1.9.3", Compiler:"gc", Platform:"windows/amd64"}
Unable to connect to the server: dial tcp [::1]:8080: connectex: No connection could be made because the target machine actively refused it.

我可以使用Docker for Windows创建上下文吗? 或者我可以手动设置吗? 我有点不确定如何获得kubectl config set-context命令所需的信息。

我可以在Kubernetes外面运行码头工人集装箱。 我看到在Docker中运行的Kubernetes容器。

> docker ps
CONTAINER ID        IMAGE                            COMMAND
8285ca0dd57a        353b8f1d102e                     "kube-scheduler --ad…"
3b25fdb0b7a6        40c8d10b2d11                     "kube-controller-man…"
e81db90fa68e        e03746fe22c3                     "kube-apiserver --ad…"
2f19e723e0eb        80cc5ea4b547                     "/kube-dns --domain=…"
etc...
docker kubernetes docker-for-windows
2个回答
1
投票

HOMEDRIVE设置为公司策略时,windows的docker存在问题。

如果将$KUBECONFIG环境变量设置为C:\Users\my_username\.kube\config(确保$HOME环境变量扩展,请不要使用$HOME本身。)它应该可以工作。

更多信息:https://github.com/docker/for-win/issues/1651


1
投票

我发现Docker for Windows正确更新了我的kubectl配置文件,但在Windows 10 Enterprise上没有名为“HOME”的环境变量。

所以kubectl无法找到配置文件C:\users\{userid}\.kube\config

添加环境变量HOME=C:\users\{userid}解决了我的机器上的问题。

见:https://github.com/docker/for-win/issues/2066

© www.soinside.com 2019 - 2024. All rights reserved.