docker login命令不允许使用ECR中的基本映像

时间:2019-05-01 19:12:35

标签: docker docker-pull elastic-container-registry

我有这个顺序:

    docker_login_cmd="$(aws ecr get-login --no-include-email --region ${region})"

    eval "$docker_login_cmd"

    docker pull 9136xxx0371.dkr.ecr.us-west-2.amazonaws.com/interos_keys:latest

    docker images

   ./jenkins-jobs/jobs/foo/exec.sh

这将导致以下输出:

    + docker login -u AWS -p eyJwYXlsb2FkIjoiYUlBa0xJZ1RTb2NYOU4vSzU2dG55di84cHJmdDlZeHlTTVVuZ2lwaEloZXlOemUJFSUE3eE1iWmFJRU9Ya0crMWZUVkJzYXpPSGMvV2xQUmIxUGdBc2pLQjUrYVo2bzl1TE11dTJybTVwUTErU1daTU9uMkFhYmg5T0pnazE4MWgrQT0iLCJ2ZXJzaW9uIjoiMiIsInR5cGUiOiJEQVRBX0tFWSIsImV4cGlyYXRpb24iOjE1NTY3ODA2MTR9 https://913617820371.dkr.ecr.us-west-2.amazonaws.com
    WARNING! Using --password via the CLI is insecure. Use --password-stdin.
    WARNING! Your password will be stored unencrypted in /root/.docker/config.json.
    Configure a credential helper to remove this warning. See
    https://docs.docker.com/engine/reference/commandline/login/#credentials-store

    Login Succeeded
    + docker pull 9136xxxx0371.dkr.ecr.us-west-2.amazonaws.com/interos_keys:latest
    latest: Pulling from interos_keys
    Digest: sha256:efa5fab058ebd44b084e2bb3whateverf7fae45268d897c9c780f9d
    Status: Image is up to date for 9136xxxx20371.dkr.ecr.us-west-2.amazonaws.com/interos_keys:latest


   + docker images
    REPOSITORY                                                     TAG                 IMAGE ID            CREATED             SIZE
    9136xxx0371.dkr.ecr.us-west-2.amazonaws.com/interos_keys      latest              df61268da808        26 minutes ago      934MB
    + ./jenkins-jobs/jobs/foo/exec.sh

    Sending build context to Docker daemon  6.144kB

    Step 1/15 : FROM interos_keys:latest
    pull access denied for interos_keys, repository does not exist or may require 'docker login'

这太令人沮丧了……我在做什么错。它只是在本地拉出了名称为interos_keys:latest的映像,因此该映像已在本地并且我已经使用Docker登录。 WTF正在大声笑。

1 个答案:

答案 0 :(得分:3)

<a_tag>a1</a_tag>实际上不是完整的图像名称。您还需要使用存储库。 interos_keys:latest是全名。

9136xxxx0371.dkr.ecr.us-west-2.amazonaws.com/interos_keys:latest

将起作用。

所有图像都可以通过这种方式引用。通用格式为FROM 9136xxxx0371.dkr.ecr.us-west-2.amazonaws.com/interos_keys:latest 。对于不是URL的存储库名称,docker hub只是“硬编码”。参见Docker Registry name resolution

此外,将没有任何存储库的图像转换为docker hub的库存储库,请参阅https://hub.docker.com/u/library/。这些通常是某些应用的官方图片。