AWS堆栈输出ECR映像名称

时间:2020-07-16 12:23:39

标签: amazon-cloudformation amazon-ecr

我正在使用cloudformation创建一组ECR存储库以在我的根脚本中使用。对于任务定义,我需要使用以下格式存储这些已创建存储库的图像名称:

{ACC_NR}.dkr.ecr.eu-central-1.amazonaws.com/{REPO_NAME}

当我在输出中输出创建的ECR时,我只有2个选项。我可以在没有其他信息的情况下获得{REPO_NAME}信息,或者得到ARN,它包含或多或少的相同信息,但结构不同。

在CF模板中的变量中获取图像名称的最佳方法是什么?基本上,我需要在导航到ECR并按下存储库旁边的“复制”按钮时会得到的字符串。

1 个答案:

答案 0 :(得分:1)

您可以“手动”构建所需的ARN。例如,要将其作为输出添加到创建AWS::ECR::Repository的堆栈中,可以执行以下操作:

Resources:

    MyECRRepo:
        Type: AWS::ECR::Repository
        Properties:
            # some properties

Outputs:

    MyARN:
        Value: !Sub "${AWS::AccountId}.dkr.ecr.${AWS::Region}.amazonaws.com/{MyECRRepo}"