AWS Lambdaでコンテナが使えるようになり、Serverless Frameworkで設定できるようにもなりました。が、エラーに遭遇したので、メモ。
Source image XXX is not valid. Provide a valid source image. (Service: AWSLambdaInternal; Status Code: 400; Error Code: InvalidParameterValueException;
エラーを見ると、InvalidParameterValueExceptionとあるので、serverless.ymlの記述になにか間違いがあるようだ、というところまではわかります。でも、そこから先、ググっても事例は見当たりません。
imageの指定にタグは不要
Container Image Support for AWS Lambda という記事を注意深く読んで気付いたのですが、コンテナイメージにつけるタグは指定しません。

Container Image Support for AWS Lambda
Container Image Support for AWS Lambda has now been added. Read up on why you may (or may not) want to use it and how ea...
タグを含んだまま記述していたので、Provide a valid source image と怒られたのですね。
ECRのコンソール画面からのコピペは注意
ECRの画面を見ると、イメージのURIやダイジェストがコピーできるようになっています。ついついここでコピーしてserverless.ymlに貼り付けてしまいたくなりますが、このURIにはタグが含まれています。
これに気付かなかったため、エラーに悩まされることになりました。
コメント