Devspace deploy error: pullSecrets[0].registry: cannot be empty

Devspace deploy error: pullSecrets[0].registry: cannot be empty

我正在研究如何使用 kubernetes 部署 django 应用程序,我发现 this tutorial,它解释了 Devspace 工具,所以按照教程就像它一样 returns 给我留言我无法解决。 消息是这样的:

returns只有这个[fatal] pullSecrets[0].registry: cannot be empty

有人可以帮我吗?

首先在您的设置中,您错过了 两个 步骤

其中询问 docker 注册表 用户名 和身份验证。

如果您传递详细信息,您将不会遇到任何问题,秘密将自动创建。

您必须将 pull secret 的值设置为 true

createPullSecret: true

当您必须从私有容器存储库中获取容器 (docker) 图像时,Kubernetes 配置会使用 pull seceret,例如 private docker repository.

如果您的配置拉取已经存在但您尚未创建它,您可以通过提供一些详细信息来手动创建它

kubectl create secret docker-registry my-pull-secret --docker-server=[REGISTRY_URL] --docker-username=[REGISTRY_USERNAME] --docker-password=[REGISTRY_PASSWORD] --docker-email=[YOUR_EMAIL]

阅读更多信息:https://devspace.cloud/docs/v3.5.18/image-building/registries/pull-secrets

之前报告过同样的问题:https://github.com/loft-sh/devspace/issues/1317

这里是 DevSpace 维护者。检查您的 devspace.yaml,您会看到定义了 pullSecrets 部分,并且该部分的第一个条目 registry 未定义或为空字符串。

要解决此问题,您可以删除整个 pullSecrets 或提供有效的注册表主机名 + 用户名和密码。对于用户名,尤其是密码,您应该使用 ${REGISTRY_PASSWORD} 等变量,然后通过终端中的环境变量设置它们,或者让 DevSpace 通过 devspace set var REGISTRY_PASSWORD=xxx 等设置它们