web-dev-qa-db-ja.com

Dockerコンテナでコマンドを実行できません

「bind」と呼ばれるドッカーコンテナーでbashを実行しようとしています

docker exec -it bind bash

次のエラーメッセージが表示されます。

rpc error: code = 2 desc = oci runtime error: exec failed: 
container_linux.go:247: starting container process caused "process_linux.go:110: 
decoding init error from pipe caused \"read parent: connection reset by peer\""

ログに異常はありません。 dockerまたはコンテナーを再起動しても効果がないようです。また、ハードドライブに十分なスペースがあることを確認しました。コンテナー内の他のバイナリーを開始すると、同じエラーが発生します。

バージョン情報:

docker --version:

Docker version 1.13.1, build 07f3374/1.13.1

OS:

cat /etc/redhat-release 

CentOS Linux release 7.6.1810 (Core) 

任意の助けいただければ幸いです。

6
Fang

これは、docker RPMパッケージの最近の更新で導入されたバグのようです。一時的な回避策は、すべてのDockerパッケージを以前のリリースにダウングレードすることです(75は動作するようです)。

yum downgrade docker-1.13.1-75.git8633870.el7_5 \
              docker-client-1.13.1-75.git8633870.el7_5 \
              docker-common-1.13.1-75.git8633870.el7_5 \
              docker-rhel-Push-plugin-1.13.1-75.git8633870.el7_5
8

Red Hatのバグジラに関するバグレポートは次のとおりです。 https://bugzilla.redhat.com/show_bug.cgi?id=1655214

2

あなたが使うなら

yum update

以前、ドッカーの古いバージョンが何であるかわからない、ただ実行する

yum downgrade docker docker-client docker-common

それは私のために働く

2
XQ DD

これは既知の問題であり、新しいdockerパッケージで修正されています: https://bugzilla.redhat.com/show_bug.cgi?id=1655214

まだアップグレードできない問題のある人のために、ダウングレードを必要としない問題について、William Brownが述べた回避策があります。

PID=docker inspect --format {{.State.Pid}} <name of container>
nsenter --target $PID --mount --uts --ipc --net --pid /bin/sh

これがあなたのためにうまくいくことを願っています

2
Wigglemaster

今日、Docker(Centosのバージョン1.13.1-84)のアップデートをインストールしましたが、それ以降、すべてのコンテナーで同じ問題が発生しました。

バージョン1.13.1-75へのダウングレードがうまくいきました。

1
Greggy

これは、権限がないためだと思います。

以下のようにSudoでdockerを実行してみてください。

Sudo docker exec -it bind bash

お役に立てれば。

0
Varun Karthik

「ピアによる接続リセット」は、通常、ポートに特定の不一致がある場合に発生します。あなたがポートを公開しておらず、それを使用しようとしていない、または不適切なポートマッピングのように。実際、サービスがlocalhostにバインドされている場合は、チェックしてください。サービスをホストする場合は、0.0.0.0にバインドすることができます。

このエラーは、多くの問題に関連している可能性があります。しかし、主に、間違ったポートと間違ったIPをバインドすることと一致します。

0
Srinivas vaddi