Docker密码存储在.docker / config.json中

时间:2019-11-09 03:10:21

标签: docker base64

.docker/config.json中,我的密码存储为QA=="。我的密码以@结尾。

{
    "auths": {
        "registry.nmlv.nml.com": {
            "auth": "QA==",
            "email": "foo@bar.com"
        }
    },
    "HttpHeaders": {
        "User-Agent": "Docker-Client/19.03.4 (darwin)"
    }
}

auth属性实际上是username:password的base64,但是我的密码base64将以QAo=结尾。我想知道docker如何更改密码?

我使用了base64 <<< @命令

1 个答案:

答案 0 :(得分:1)

当您在命令行中手动对字符串进行base64编码时,需要注意不要包含换行符。 echo -n对此很有帮助。

$ echo -n '@' | base64
QA==

这与您的.docker/config.json文件中的内容匹配。如果我解码您的其他字符串

$ echo -n 'QAo=' | base64 -D | od -t x1
0000000    40  0a

它包含两个字节,ASCII 0x40(@)和0x0a(换行符)。