在 Azure DevOps SSH 远程计算机上执行“docker 登录”时出错:密码存储警告

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

问题: 尝试在 Azure DevOps SSH 远程计算机上执行 docker 登录时遇到错误。

错误消息: 执行命令后,我收到以下错误:

WARNING! Your password will be stored unencrypted in /***/.docker/config.json.
Configure a credential helper to remove this warning. See
https://docs.docker.com/engine/reference/commandline/login/#credentials-store

描述:

我正在尝试通过 Azure DevOps SSH 在远程计算机上执行 docker 登录。但是,命令执行会导致上述有关未加密密码存储的警告。此警告建议配置凭据助手,但我不确定如何在 Azure DevOps 中的 SSH 远程环境上下文中继续操作。

我正在使用 CMD :

echo "***" | docker login --username myusername --password-stdin

尝试的步骤:

在SSH远程机器上执行docker登录命令。 查看了警告消息中提供的 Docker 文档,但不确定如何在 Azure DevOps SSH 场景中实现该解决方案。

预期行为: 成功的 docker 登录,没有警告,也没有找到安全的方法来处理 Azure DevOps SSH 环境中的凭据。

环境详情:

Azure DevOps 环境 SSH远程访问进行docker登录 在远程机器上配置 Docker 任何有关如何解决此警告并在此 SSH 环境中安全地执行 docker 登录的指导将不胜感激。谢谢!

docker azure-devops ssh
1个回答
0
投票

您可以尝试按照以下步骤检查以避免出现警告消息:

  1. 将您的 Docker 登录密码添加为管道中的 秘密变量

  2. 在管道中,运行如下命令。

    echo $(Docker_Password) | docker login --username myusername --password-stdin
    

此外,您还可以尝试按照以下步骤在远程计算机上配置凭据助手。另请参阅“

docker login
”了解更多详情。

  1. 登录到远程计算机。如果您当前已登录 Docker,请运行“

    docker logout
    ”以从默认存储中删除凭据。

  2. 下载 docker-credential-helpers here 并安装它。

  3. 然后找到并打开文件“

    .docker/config.json
    ”。它通常在 Linux 或 macOS 上定位“
    $HOME/.docker/config.json
    ”,在 Windows 上定位“
    %USERPROFILE%/.docker/config.json
    ”。

  4. 在“

    .docker/config.json
    ”文件中,指定凭证存储以告诉docker引擎根据机器的操作系统使用它。

    // Specify "osxkeychain" on macOS, "wincred" on windows, and "pass" on Linux.
    {
      "credsStore": "osxkeychain"
    }
    

© www.soinside.com 2019 - 2024. All rights reserved.