绕过--password-stdin警告(docker)

时间:2019-04-02 11:30:45

标签: docker docker-windows aws-ecr windows-server-2019

前一天,docker的另一个问题。 我有一个Windows服务器2019,docker版本18.09.03,我想将我的图像发送到ECR。

由于某些原因,我无法获得警告docker:警告!您的密码将未加密存储 我的部署工具将其视为错误,因此无法部署。因此,我一直在寻找如何以“正确”的方式使用--password-stdin。进行得不太顺利。

这是我现在正在使用的Powershell脚本。

#First step to create the file
aws ecr get-login --no-include-email | Out-File -FilePath FILEPATH 
#Second step to filter the file and just get the password.
-split @(Get-Content -Path FILEPATH) |Select-Object -Index 5 | Out-File -FilePath FILEPATH

#Get authorized but stdin warning?? 
cat FILEPATH | docker login -u AWS --password-stdin https://NUMBER.dkr.ecr.eu-west-1.amazonaws.com

我正在将密码传递到文件中,然后从文件中输入stdin,它可以工作,但会返回警告。

我也尝试过该评论(https://github.com/aws/aws-cli/issues/2875#issuecomment-433565983),但它也不接受标志。我

aws ecr get-login --no-include-email --region eu-west-1 --password-stdin and Unknown options: --password-stdin
aws ecr get-login --region us-east-1 --print-password-only
--print-password-only is unknows as well)

我现在开始变得烦恼和沮丧。任何帮助将不胜感激,谢谢!

1 个答案:

答案 0 :(得分:0)

要在没有任何警告的情况下登录,请尝试-password-stdin ,但请务必记住,在这种情况下,密码必须由stdin提供 。因此--password-stdin <my-pwd>不起作用。 一个可以尝试

echo <my-pwd> | docker login <registry-name> -u <username> -p <password>

或执行以下操作

cat ~/my-pwd.txt | docker login <registry-name> -u <username> -p <password>

有关更多信息,请参考问题:Docker: Using --password via the CLI is insecure. Use --password-stdin