为什么 docker login 命令在我的计算机上保存未加密的密码?

问题描述 投票:0回答:3

我使用了

docker login
命令并通过了我的凭据,但我收到了警告
WARNING: login credentials saved in /Users/{my_username}/.docker/config.json
。我检查了该文件,确实我的密码未加密(仅使用 Base64 编码)。

为什么 docker 保存我的密码时未加密?难道它不应该将其保存在我的钥匙串中(我使用的是 Mac OS),或者不保存密码而只是生成一些访问令牌或类似的东西吗?

docker docker-machine
3个回答
11
投票

这个问题现在已经解决了,按照您的建议,您可以保存到钥匙串(或使用其他“助手”)。完整详细信息位于 Docker 文档中:https://docs.docker.com/engine/reference/commandline/login/#credentials-store

对于任何对历史感兴趣以及为什么这不是一个简单的修复的人: https://github.com/docker/docker/issues/10318


1
投票

您可以使用凭据存储来实现此目的。这是 Docker 的官方文档:

凭证存储


0
投票

对我来说,它位于

/root/.docker/config.json
。我必须
sudo -s
才能导航到那里,至少,这样我就可以删除它......

解决方案:

  • docker login --password-stdin
  • 或者,不要使用
    docker login
    ;你可能不需要它!尝试使用
    docker pull
    来运行
    sudo
    命令。
© www.soinside.com 2019 - 2024. All rights reserved.