AWSトラブルシューティング AWS上でコンテナ起動時に「standard_init_linux.go: exec user process caused: exec format error」が発生
現象
- ECSでFargateを用いて自分で用意したコンテナを実行しようとしたところ、以下のエラーが発生しました。
standard_init_linux.go:228: exec user process caused: exec format error
原因
- 原因を調査したところ、ビルド環境とAWS Fargateでの実行環境とでCPUアーキテクチャが異なるため、でした。
- 最近、ビルド環境のマシンがM1Macになったため、ビルド環境のCPUアーキテクチャはarm、Fargate側はx86_64という状態。
対策
- ホストPC側でDockerビルドする際に、オプションでCPUアーキテクチャを指定する。
docker build --platform linux/amd64 .
standard_init_linux.go:228: exec user process caused: exec format error
- 原因を調査したところ、ビルド環境とAWS Fargateでの実行環境とでCPUアーキテクチャが異なるため、でした。
- 最近、ビルド環境のマシンがM1Macになったため、ビルド環境のCPUアーキテクチャはarm、Fargate側はx86_64という状態。
対策
- ホストPC側でDockerビルドする際に、オプションでCPUアーキテクチャを指定する。
docker build --platform linux/amd64 .
docker build --platform linux/amd64 .
*Dockerfile内で定義することもできそうです。
https://matsuand.github.io/docs.docker.jp.onthefly/engine/reference/builder/#from
Author And Source
この問題について(AWSトラブルシューティング AWS上でコンテナ起動時に「standard_init_linux.go: exec user process caused: exec format error」が発生), 我々は、より多くの情報をここで見つけました https://qiita.com/miyatada/items/057b5a54035dda55a604著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .