standard_init_linux.go:190: exec user process caused “exec format error”

概要

dockerで起動シェルを渡した際、 “` standard_init_linux.go:190: exec user process caused “exec format error” “` というエラーが発生した際の対処

原因

起動シェルの中でshebangが抜けていたことが原因

dockerの起動スクリプトでは必ず指定しなければならない

対処

起動シェルの1行目に

#!/bin/bash

を追加してあげるのみ(環境によって適宜変える)

そもそもshebangとは

“`  #! “` で始まる行。

実行プログラムのインタプリタが定義される。

ほとんどのプログラムは shebang が自動補完されるため無くても動く。しかし、dockerでは省略が不可能。shebangが必要なようだ。