检查docker是否登录ECR

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

现在,我通过命令获取 ecr 密码并将其通过管道传输到

docker login
,以使用 ECR 注册表对我的 docker 客户端进行身份验证

 aws ecr get-login-password --region 'us-east-1' | \
 docker login --username AWS --password-stdin <my-aws-acct-id>.dkr.ecr.us-east-1.amazonaws.com

是否有命令可以判断我的 docker 客户端是否已通过 ECR 进行身份验证?

我尝试查看

docker info
中的信息和其他一些命令,但它无法告诉我我的 docker 是否已登录 ECR

下面的代码不起作用,但在我的 shell 脚本中类似这样的东西将是理想的:

   if docker info | grep -q "<my-aws-acct-id>.dkr.ecr.us-east-1.amazonaws.com"; then
        echo "Already logged in to ECR ✅"
    else
        echo "Not logged in to ECR"
docker aws-cli dockerhub amazon-ecr
1个回答
0
投票

唯一的方法似乎是检查docker的config.json,因为docker登录命令不会保留任何类型的会话。

你可以这样做:

if cat ~/.docker/config.json | grep <your-account-id>.dkr.ecr.<your-region>.amazonaws.com; then
  echo "Already logged in to ECR ✅"
else
  echo "Not logged in to ECR"
fi;
© www.soinside.com 2019 - 2024. All rights reserved.