我正试图部署一个Docker容器到本地运行的minikube实例,并在尝试拉(?)图像时得到此错误。该映像存在于自托管的Docker注册表中。我用与以下Dockerfile内置测试图像:“无法检查图像XXX:图像的ID或尺寸未设置XXX”?
FROM alpine:latest
ENTRYPOINT ["echo"]
我使用fabric8io kubernetes-client
库创建像这样部署:
// 'kube' is an instance of io.fabric8.kubernetes.client.KubernetesClient
final Deployment deployment = kube.extensions().deployments()
.createOrReplaceWithNew()
.withNewMetadata()
.withName(name)
.withNamespace("staging")
.endMetadata()
.withNewSpec()
.withReplicas(1)
.withNewTemplate()
.withNewMetadata()
.addToLabels("app", name)
.endMetadata()
.withNewSpec()
.addNewImagePullSecret()
// "regsecret" is the kubectl-created docker secret
.withName("regsecret")
.endImagePullSecret()
.addNewContainer()
.withName(name)
.withImage(imageName + ":latest")
.endContainer()
.endSpec()
.endTemplate()
.endSpec()
.done();
这是Arch Linux的所有正在运行,内核Linux 4.10.9-1-ARCH x86_64 GNU/Linux
。使用来自社区存储库的AUR,docker 1:17.04.0-1
的minikube 0.18.0-1
和kubectl-bin 1.6.1-1
以及使用latest
(本书编写时的2.6.1
)的码头registry
容器。 fabric8io kubernetes-client
的版本是2.2.13
。
我已经检查:
- ,自托管的注册表正确
- ,图像甚至可以拉运行在HTTPS。
docker pull
和docker run
在主机和minikube虚拟机的内部工作与预期的完全相同 - 图像运行。请参阅上面的
- minikube中没有任何名称冲突/等。我在两次尝试之间删除了部署,副本集和pod,为了安全起见,我重新创建了命名空间。但是,我发现它并没有什么不同,因为我的代码根据需要清理了现有的Pod /副本集/部署
- DNS根本不是问题,据我所知
我没有:
- 运行kubernetes本地(相对于minikube),作为AUR包kubernetes需要一个令人难以置信的长的时间来建立我的机器
- 通过kubernetes源代码阅读,因为我不知道golang
当检查minikube dashboard
,用于部署的部分,副本集,和豆荚都具有相同的错误:
Failed to inspect image "registry_domain/XXX/YYY:latest": Id or size of image "registry_domain/XXX/YYY:latest" is not set
Error syncing pod, skipping: failed to "StartContainer" for "YYY" with ImageInspectError: "Failed to inspect image \"registry_domain/XXX/YYY:latest\": Id or size of image \"registry_domain/XXX/YYY:latest\" is not set"
和荚日志永远停留在
container "YYY" in pod "YYY" is waiting to start: ImageInspectError
仰望错误提供的信息导致我到https://github.com/kubernetes/minikube/issues/947,但这不是相同的问题,因为kube-dns
按预期工作。这是唯一相关的搜索结果,因为这想出其他的结果是
- 甚至不包含相关的错误信息
- 的kubernetes源,这是不利于我 松弛聊天室档案
- kubernetes/minikube#947,如上
我真的不知道在哪里可以从这里走。任何意见,将不胜感激。
之前安装你能为kubernetes和泊坞窗后的版本号吗?此外,请使用码头注册表。并非所有版本都正确交互。 –
版本号已被编辑到帖子中@JanosLenart – user7876637