【Docker】docker exec実行時に「OCI runtime exec failed: exec failed: container_linux.go:380:〜」エラーが発生した時の対応方法

Dockerコンテナにアクセスするために「docker exec」を実行時に以下のエラーが発生することがあります。

$ docker exec -it rsyslog /bin/bash
OCI runtime exec failed: exec failed: container_linux.go:380: starting container process caused: exec: "/bin/bash": stat /bin/bash: no such file or directory: unknown

もしくは

$ docker exec -it rsyslog bash 
OCI runtime exec failed: exec failed: container_linux.go:380: starting container process caused: exec: "bash": executable file not found in $PATH: unknown

うまくDockerコンテナに入れない場合の対応方法を紹介します。

「Docker」コンテナへアクセスできないエラーが発生した場合の対応方法

Dockerコンテナへのアクセス時にエラーが発生する理由として、今回構築した「alpine-linux」イメージのDockerコンテナでは、「docker exec」した際に「bash」コマンドが使用できないようです。

代わりに「sh」もしくは「/bin/sh」を使用することでコンテナへアクセスすることができます。

以下は実行例です。

$ docker exec -it rsyslog sh  
/home/appliance # 
/home/appliance # 
/home/appliance # 

もしくは

$ docker exec -it rsyslog /bin/sh
/home/appliance # 
/home/appliance # 
/home/appliance # 

docker exec実行時に「OCI runtime exec failed: exec failed: container_linux.go:380:〜」エラーが発生した場合の対応方法は以上となります。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)

ABOUTこの記事をかいた人

blank

インターネット関連のSEをやっています。 ネットワーク、サーバー、ストレージ、仮想基盤まで幅広く手を出しており、MVNOの構築経験もあります。 現在は、Pythonを使ったプログラミングの開発をしネットワークの自動化ツールを作成しています! Pythonの入門書も作成しているので、ぜひ参考にしてください!