「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)
任意の助けいただければ幸いです。
これは、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
Red Hatのバグジラに関するバグレポートは次のとおりです。 https://bugzilla.redhat.com/show_bug.cgi?id=1655214
あなたが使うなら
yum update
以前、ドッカーの古いバージョンが何であるかわからない、ただ実行する
yum downgrade docker docker-client docker-common
それは私のために働く
これは既知の問題であり、新しい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
これがあなたのためにうまくいくことを願っています
今日、Docker(Centosのバージョン1.13.1-84)のアップデートをインストールしましたが、それ以降、すべてのコンテナーで同じ問題が発生しました。
バージョン1.13.1-75へのダウングレードがうまくいきました。
これは、権限がないためだと思います。
以下のようにSudoでdockerを実行してみてください。
Sudo docker exec -it bind bash
お役に立てれば。
「ピアによる接続リセット」は、通常、ポートに特定の不一致がある場合に発生します。あなたがポートを公開しておらず、それを使用しようとしていない、または不適切なポートマッピングのように。実際、サービスがlocalhostにバインドされている場合は、チェックしてください。サービスをホストする場合は、0.0.0.0にバインドすることができます。
このエラーは、多くの問題に関連している可能性があります。しかし、主に、間違ったポートと間違ったIPをバインドすることと一致します。