根据 docker 文档: 要以非交互方式运行 docker login 命令,您可以设置 --password-stdin 标志以通过 STDIN 提供密码。使用 STDIN 可以防止密码出现在 shell 的历史记录或日志文件中。 以下示例从文件中读取密码,并使用 STDIN 将其传递给 docker login 命令: $ cat ~/my_password.txt | docker login --username foo --password-stdin $ docker login --username foo --password-stdin < ~/my_password 以下示例从变量中读取密码,并使用 STDIN 将其传递给 docker login 命令: $ echo "$MY_PASSWORD" | docker login --username foo --password-stdin 原文由 nickgryg 发布,翻译遵循 CC BY-SA 4.0 许可协议
在基于 Windows 的系统上(或在基于 vs2017-win2016 的 Azure Pipelines 任务中运行时)相同的 echo 命令也会输出一个额外的 换行符 。 使用 set /p 的解决方法,另请参见 问题 + 答案 。 完整的命令如下: