我不确定是否已经使用cmd:docker login在cmd行中登录了Docker注册表。如何在不尝试推送的情况下测试或查看是否已登录?
编辑2020
回顾(已关闭)github问题,指出那里没有实际的会话或状态。
docker login实际上并没有创建任何持久性会话,它只是将用户的凭据存储在磁盘上,以便在需要身份验证时可以读取它们以登录
正如其他人指出的那样,成功登录后,会将auths
条目/节点添加到~/.docker/config.json
文件中(这也适用于私有注册表):
{
"auths": {
"https://index.docker.io/v1/": {}
},
...
注销时,此条目将被删除:
$ docker logout
Removing login credentials for https://index.docker.io/v1/
docker的内容如下config.json
:
{
"auths": {},
...
可以通过您的脚本或代码来解析此文件,以检查您的登录状态。
您可以使用登录到docker docker login <repository>
$ docker login
Login with your Docker ID to push and pull images from Docker Hub. If
you don't have a Docker ID, head over to https://hub.docker.com to
create one.
Username:
如果您已经登录,则提示如下:
$ docker login
Login with your Docker ID to push and pull images from Docker Hub. If
you don't have a Docker ID, head over to https://hub.docker.com to
create one.
Username (myusername): # <-- "myusername"
有关的原始说明~/.docker/config.json
,请检查问题:如何确定我是否已登录到私有Docker注册表?
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句