具有私有存储库 CannotPullContainerError 的 Elastic Beanstalk Multicontainer Docker

Elastic Beanstalk Multicontainer Docker with private repository CannotPullContainerError

之前我使用了单个 docker 容器弹性 beanstalk 环境。它能够使用存储在 S3 上的我的登录凭据从私有 docker 中心存储库下载容器。 但是,我创建了一个新的多容器 docker 环境,从那时起我总是收到错误:

change="{TaskArn:arn:aws:ecs:eu-west-1:188125317072:task/dbf02781-8140-422a-9b81-93d83441747d
ContainerName:aws-first-test Status:4 
Reason:CannotPullContainerError: 
Error: image test/awstest:latest not found ExitCode:<nil> PortBindings:[] SentStatus:NONE}"

(我使用的是与之前完全相同的容器)

容器确实存在并且环境与登录凭据位于同一位置(爱尔兰)

我的Dockerrun.aws.json:

{
  "AWSEBDockerrunVersion": 2,
  "authentication": {
    "Bucket": "docker-ireland",
    "Key": ".dockercfg"
  },

  "containerDefinitions": [

    {
      "name": "aws-first-test",
      "image": "test/awstest",
      "memory": 250
    },
    {
      "name": "aws-second-test",
      "image": "test/awstest",
      "memory": 250
    }
  ]
}

Dockerrun.aws.json 区分大小写,在 2.0 版中,键 authenticationbucketkey 更改为小写。

此答案来自亚马逊 aws 论坛:https://forums.aws.amazon.com/message.jspa?messageID=667098

在我的例子中,这个错误是因为我的 S3 配置文件中有如下内容:

{
  "server" :
  {
    "auth" : "*****",
    "email" : "*****"
  }
}

不是开玩笑,我有关键字 "server" 而不是注册表 url 服务(https://index.docker.io/v1/ 代表 docker)。

我一定是从 idk 的一些博客或文档中复制过来的。感觉已经倾倒了。