【问题标题】:Kubernetes fails to start on Docker Desktop without direct internet accessKubernetes 无法在没有直接 Internet 访问的情况下在 Docker Desktop 上启动
【发布时间】:2022-01-02 03:52:01
【问题描述】:

我正在使用 WSL2 在 Windows 10 上运行 Docker Desktop 3.6.0。 当我尝试启用 Kubernetes 时,我只在 Docker 桌面 UI 中看到“启动失败”。 Docker 本身工作正常。不知道如何获得更多日志。

这里是 kubectl 版本的输出:

kubectl version
Client Version: version.Info{Major:"1", Minor:"21", GitVersion:"v1.21.3", GitCommit:"ca643a4d1f7bfe34773c74f79527be4afd95bf39", GitTreeState:"clean", BuildDate:"2021-07-15T21:04:39Z", GoVersion:"go1.16.6", Compiler:"gc", Platform:"windows/amd64"}
Error from server (InternalError): an error on the server ("") has prevented the request from succeeding

从其他帖子看来,初始设置需要互联网连接:

在我的工作环境中无法直接连接互联网,我只能在我的电脑上手动复制所需的图像。 我也没有管理员权限。

有没有办法在 Docker Desktop 上手动设置 Kubernetes 或以某种方式指示可以找到所需映像的位置?

我有一个 nexus Docker 存储库,我可以将所需的图像推送到其中。 我已更改 ~\.docker\daemon.json 并将我的 docker 存储库添加到不安全的注册表中。首次登录后,docker 能够从那里提取图像并运行它们。

已尝试重置或启用和禁用 Kubernetes。同样删除 ~/.kube/config 也没有用。

【问题讨论】:

  • 一种可能的方法是在气隙机器上设置一个 localhost docker 注册表,然后将 Kubernetes 特定图像推送到此服务器。当然,您首先需要在本地工作站上下载/拉取 k8s 映像。 docs.docker.com/registry/deploying/…
  • 好的,我想过类似的事情,但我不知道我需要提取哪些图像。你知道我需要哪些吗?我有一个可以推送图像的 nexus docker 存储库。
  • 你真的坚持使用 Docker Desktop 吗?您可以使用 k3s 来满足您的需求:rancher.com/docs/k3s/latest/en/installation/airgap
  • 我没有管理员权限,其他软件审批会很复杂。但我可以运行任何 docker 容器。我可以在运行的 docker 上安装 k3s 吗?
  • 是的,你可以使用k3dk3d.io/v5.1.0

标签: windows docker kubernetes docker-desktop


【解决方案1】:

高水平答案...

  1. 获取 docker 注册表
    1. 如果你在一个老派酷的企业工作;使用JFrog Artifactory
    2. 如果你只是想让它工作;使用Harbor
    3. GitHub 和 GitLab(取决于许可证)也有可用的注册表...
  2. 编辑 kubernetes 节点(您的工作站)上的 docker 守护程序,使其仅从这些注册表中提取。
    1. 如果是红帽; /etc/containers/registries.conf
    2. 如果debain; /etc/docker/daemon.json
    3. 您也可以破解/etc/hosts 条目...
  3. 填充新注册表
  4. 运行 kubernetes 和 yoiu 应该很好。根据您选择的配置,您可能需要添加registry credential secret

【讨论】:

  • 感谢您的回答,但我认为它并没有真正回答我的问题:如前所述,我正在使用 Docker Desktop 在 Windows 10 上运行,并且我有一个 Nexus Docker 注册表。我已经在 daemon.json 的 insecure-registries 中添加了我的 docker 注册表,但这并没有帮助。
  • 您是否尝试过 /etc/hosts 条目? (或者我猜你的情况是C:/windows/system32/drivers/etc/hosts 或类似的东西——已经有一段时间了)
  • 也在没有管理员权限的情况下进行开发...memes.yarn.co/yarn-clip/45c2e073-8f2b-436b-ab7c-25591fa3f906也许是玩kind.sigs.k8s.io的借口
猜你喜欢
  • 1970-01-01
  • 2021-05-15
  • 2022-12-07
  • 1970-01-01
  • 2018-08-19
  • 2019-10-03
  • 2021-04-19
  • 2021-11-25
  • 2020-08-07
相关资源
最近更新 更多