我使用容器在我的K8S内部启动docker映像。我无法在我的环境中放置代理,并且节点vm上没有互联网访问权限。
我已经安装了一个JCR,以便能够获取docker映像并将其作为镜像提供。 该JCR可以访问互联网。
当我查看K8S内部时,我总是看到它无法拉出沙箱图像“ k8s.gcr.io/pause:3.1”,它总是在I / O超时状态下发生
我在Jcr中放入了几个docker repote存储库
docker-remote here k8s.gcr.io https://registry-1.docker.io/
和一个名为docker的虚拟
我放入了containerd.toml
...
[plugins.cri.registry]
[plugins.cri.registry.mirrors]
[plugins.cri.registry.mirrors."*"]
endpoint = ["https://docker.jcr.mydomain"]
[plugins.cri.registry.mirrors."docker.io"]
endpoint = ["https://docker.jcr.mydomain"]
[plugins.cri.registry.mirrors."k8s.gcr.io"]
endpoint = ["https://docker.jcr.mydomain"]
然后它能够提取图像,但是我真的不明白为什么它不能使用“ ”通配符提取图像。 我无法为需要找到解决方案以使“ ”正常工作的所有Docker注册表执行此操作。
quay.io发生了另一个铅 对于docker registy quay.io,我永远无法对其进行镜像 即使我放
...
[plugins.cri.registry]
[plugins.cri.registry.mirrors]
[plugins.cri.registry.mirrors."*"]
endpoint = ["https://docker.jcr.mydomain"]
[plugins.cri.registry.mirrors."docker.io"]
endpoint = ["https://docker.jcr.mydomain"]
[plugins.cri.registry.mirrors."quai.io"]
endpoint = ["https://docker.jcr.mydomain"]
,并为此图片quay.io/coreos/flannel:v0.11.0-amd64
这是结果:
Pulling image "quay.io/coreos/flannel:v0.11.0-amd64"
Warning Failed 13s (x3 over 54s) kubelet, 121a9964-9914-4548-b576-69d6ac1f88d8.k8s Failed to pull image "quay.io/coreos/flannel:v0.11.0-amd64": rpc error: code = Unknown desc = failed to pull and unpack image "quay.io/coreos/flannel:v0.11.0-amd64": failed to resolve reference "quay.io/coreos/flannel:v0.11.0-amd64": unexpected status code [manifests v0.11.0-amd64]: 403 Forbidden
Warning Failed 13s (x3 over 54s) kubelet, 121a9964-9914-4548-b576-69d6ac1f88d8.k8s Error: ErrImagePull
Normal BackOff 1s (x3 over 54s) kubelet, 121a9964-9914-4548-b576-69d6ac1f88d8.k8s Back-off pulling image "quay.io/coreos/flannel:v0.11.0-amd64"
Warning Failed 1s (x3 over 54s) kubelet, 121a9964-9914-4548-b576-69d6ac1f88d8.k8s Error: ImagePullBackOff
答案 0 :(得分:0)
我找到了“ quay.io/coreos/flannel:v0.11.0-amd64”失败的原因。 这是因为该映像中包含严重的CVE,因此Artifactory存储库禁止下载。 参见https://quay.io/repository/coreos/flannel?tab=tags