💬
【mac】docker runでstandard_init_linux.go:219がでた原因
環境
M1 MAC
Tech Preview of Docker Desktop for M1
原因
ENTRYPOINTにshebangをを書いてなかったから
ファイル
$ tree myimage
myimage
├── Dockerfile
└── hello.sh
dockerfile
FROM ubuntu:20.04
COPY ./hello.sh /hello.sh
ENTRYPOINT [ "/hello.sh" ]
hello.sh
echo "Hello, World!"
exec sleep infinity
docker runすると以下のようにエラーが発生した
$ docker run --name mycontainer myimage:v1
standard_init_linux.go:219: exec user process caused: exec format erro
対応
hello.shにshebangを書く
hello.sh
#!/bin/bash
echo "Hello, World!"
exec sleep infinity
$ docker run --name mycontainer myimage:v1
Hello, World!
実行できた
Discussion