出于某种原因,我无法弄清楚为什么会出现问题。
我已经创建了一个公共(public) ECR 存储库,并尝试在我的 AWS::Lambda::Function 中的 Code
block 下将图像引用为 ImageUri
。
SlackNotifierFunction:
Type: AWS::Lambda::Function
Properties:
FunctionName: !Join ["-", [!Ref Name, "slack", "notifier"]]
Role: !GetAtt LambdaRole.Arn
Code:
ImageUri: public.ecr.aws/g9c9m7n7/aws-cost-anomaly-slack-notifier:latest
Timeout: 1
MemorySize: 128
PackageType: Image
Architectures: ["arm64"]
Environment:
Variables:
LOG_LEVEL: INFO
SLACK_TOKEN: !Ref SlackToken
SLACK_CHANNEL: !Ref SlackChannel
CloudFormation 在创建 Lambda 函数时引发以下错误。
Resource handler returned message: "Source image public.ecr.aws/g9c9m7n7/aws-cost-anomaly-slack-notifier:latest is not valid. Provide a valid source image. (Service: Lambda, Status Code: 400, Request ID: 9150921d-4b35-44ae-a4eb-c137f2a779e9, Extended Request ID: null)" (RequestToken: 616bb226-a46b-faf1-c959-aad09880b137, HandlerErrorCode: InvalidRequest)
这是 ECR 公共(public)画廊链接:https://gallery.ecr.aws/g9c9m7n7/aws-cost-anomaly-slack-notifier
最佳答案
到目前为止,提供引用公共(public) ECR 画廊托管图像的图像 uri 似乎是不可能的。
关于amazon-web-services - 在 AWS::Lambda::Function 中指定 ImageUri 会引发 CF 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69997144/