Joh*_*ohn 4 docker kubernetes kubelet
Docker 有一种从远程存储检索 Docker 注册表密码的机制,而不是仅仅将它们存储在配置文件中 - 这种机制称为Credentials Store。它具有类似的机制,用于检索名为Credential Helpers 的特定注册表的密码。
~/.docker/config.json基本上,它涉及定义一个被解释为可执行文件名称的值。
{
"credsStore": "osxkeychain"
}
Run Code Online (Sandbox Code Playgroud)
键的值前面credsStore有一个前缀,如果该可执行文件(例如)存在于路径上,那么它将被执行,并且预计将用户名和密码回显给,Docker 将使用它来登录到私有注册表。这个想法是,可执行文件会访问商店并为您检索您的密码,因此您不必在集群中放置大量文件,其中包含您的用户名/密码。docker-credential-docker-credential-osxkeychainstdout
我无法让 Kubernetes kubelet 来使用此凭证存储。它似乎只是忽略它,当 Kubernetes 尝试从私有注册表下载时,我收到“无基本身份验证凭据”错误。如果我只有一个config.json包含用户名/密码的文件,那么 kubelet 就可以正常工作。
Kubernetes 是否支持 Docker 凭证存储/凭证助手?如果支持,我该如何让它们工作?
作为参考,kubelet 正在运行systemd,凭证存储可执行文件位于路径上并且config.json正在读取文件。
截至撰写本文时,Kubernetes v1.14 不支持凭证助手,如官方文档配置节点以向私有注册表进行身份验证
注意:Kubernetes 目前仅支持 docker 配置的 auths 和 HttpHeaders 部分。这意味着不支持凭证助手(credHelpers 或 credsStore)。
| 归档时间: |
|
| 查看次数: |
2817 次 |
| 最近记录: |