Kubectl 在 Mac 上的 Docker 容器中"Unable to connect to the server: EOF"失败,但在 Linux 上没有



不久前,我们一直在使用docker容器来部署到GKE集群。该容器基于谷歌云SDK的一个镜像。docker文件看起来像:

FROM gcr.io/google.com/cloudsdktool/cloud-sdk:322.0.0-alpine
RUN gcloud components install kubectl
...
# The docker image will also include any manifests etc. that is supposed to be deployed...

然后使用docker-exec针对配置的集群运行任意数量的kubectlt命令来构建和启动此映像。

在VS代码开发容器中使用了相同的方法,该容器使用与基本映像相同的Google Cloud SDK映像。

这一直运行得很好,该方法已在Jenkins以及Mac工作站上作为部署工作流的一部分使用。

现在已经有几个星期了,它不再在Mac上本地工作了。

因此:

  • 在AWS(Ubuntu(实例上构建并运行映像并部署到GKE即可工作
  • 在英特尔Mac上的多路径(Ubuntu(实例上构建和运行映像是可行的
  • 在同一台Mac上的Docker Desktop for Mac(3.3.1(上构建和运行映像是不起作用的。kubectl失败,返回Unable to connect to the server: EOF消息

(不过在同一台Mac上以本机方式运行kubectl也可以!(

在最初的SSL握手过程中,kubeclt发送的基本curl请求似乎被拒绝了,但这可能与bre无关。

有什么想法吗?

几个月来,我在Docker容器内连接GKE集群时遇到了完全相同的问题。深入研究后,我对GKE集群端点的所有curl请求都抛出了OpenSSL SSL_connect: SSL_ERROR_SYSCALL,这导致我出现了这个问题:https://github.com/docker/for-mac/issues/5524.

下载最新的Docker Desktop for Mac更新为我修复了它。

相关内容

  • 没有找到相关文章

最新更新