我们无法从Kubernetes版本1.24及以上的Nexus存储库中提取容器映像。但是,在Kubernetes版本1.23上,我们可以成功地从同一个存储库中拉取容器镜像。因此,我们在集群中一直使用Kubernetes 1.23版本。然而,当使用Kubernetes版本1.23时,我们遇到了同样的问题,即在创建Fargate配置文件时无法从Nexus存储库中提取容器映像。
目前,我们使用nginx管理Nexus。
有趣的是,当我们将容器镜像放在Docker Hub上的私有存储库中时,我们可以成功地从Fargate配置文件中提取容器镜像。
我们怀疑这个问题可能与Kubernetes从v1.24开始从Docker过渡到containerd作为运行时有关。
您能否帮助我们了解如何排除故障并解决此问题?
1条答案
按热度按时间xxls0lw81#
问题是nginx。我们使用nginx和$http_user_agent变量将docker请求定向到nexus上的docker仓库。kubernetes v1.24运行时更改为containerd后,在nginx.conf中添加了$http_user_agent=containerd的拉取镜像请求
解决问题。5000端口是Docker仓库端口。