Docker 图像无法通过 Jenkins 管道推送到 ECR & docker.withRegistry

Docker Image can't push to ECR via Jenkins Pipeline & docker.withRegistry

我是 运行 aws 服务器上的 jenkins 在构建 docker 图像的管道上工作,并在同一个 aws 帐户

上推送到 ECR
def aws_account = "https://xxxxxx.ecr.us-west-2.amazonaws.com/"
def ecr_credentials = "iam-role-arn for ecr"


    docker.withRegistry(aws_account + "${ecr_repository_name}", "ecr:us-west-2:${ecr_credentials}") {
        docker.image(customImage).push()
    }

在推送时出现以下错误 tcp:lookup 指向帐号本身

错误: docker.service 3 月 4 日 10:46:13 ip-x-xxx-x-xxx dockerd[921]: time="2021-03-04T10:46:13.989576275Z" level=error msg="Handler for POST /v1.41/auth 返回错误:Get https://yyyyyyy.ecr.us-west-2.amazonaws.com/v2/: dial tcp: lookup yyyyyyy.ecr.us-west-2.amazonaws.com: no such host

名字错了

def aws_account = "https://xxxxxx.ecr.us-west-2.amazonaws.com/"

应该是这样的

def aws_account = "https://1234567890.dkr.ecr.us-west-2.amazonaws.com"
def ecr_credentials = "iam-role-arn for ecr"


    docker.withRegistry(aws_account + "${ecr_repository_name}", "ecr:us-west-2:${ecr_credentials}") {
        docker.image(customImage).push()
    }

Pushing to ECR Using Jenkins Pipeline Plugin