ローカルで動いていたのに、「Runtime.InvalidEntrypoint」が発生した時のメモ
起きたこと
DockerfileをECRにpushし、lambdaでイメージを選択して動かすと、Runtime.InvalidEntrypointとなる
{"errorType":"Runtime.InvalidEntrypoint","errorMessage":"RequestId: ID Error: fork/exec /lambda-entrypoint.sh: exec format error"}
OS:M2 mac
色々調べてみたがDockerイメージのアーキテクチャがarm64とx86_64で違うらしい。
$docker build --platform linux/x86_64 -t docker-image:test .
buildの時にplatformを変更しても、特に改善されない...
解決
lambdaのイメージを選択するところでpushした最新のイメージを選択していなかったことが原因でした。。。また、ここでアーキテクチャも選べるので、buildする時にplatform設定するか、ここで選ぶかのどちらでも良さそうです。
最後に
めっっちゃ単純でしたが結構ハマったので、同じ方の手助けになれば幸いです!