我正在尝试通过
在名为“ bind”的Docker容器中执行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
操作系统:
cat /etc/redhat-release
CentOS Linux release 7.6.1810 (Core)
任何帮助将不胜感激。
答案 0 :(得分:8)
这似乎是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
答案 1 :(得分:2)
以下是有关Red Hat Bugzilla的错误报告:https://bugzilla.redhat.com/show_bug.cgi?id=1655214
答案 2 :(得分:2)
如果您使用
yum update
之前并且不知道Docker的旧版本是什么,只需运行
yum downgrade docker docker-client docker-common
对我有用
答案 3 :(得分:2)
这是一个已知问题,已在较新的Docker软件包中修复: https://bugzilla.redhat.com/show_bug.cgi?id=1655214
对于那些无法升级的问题,威廉·布朗提到了不需要降级的解决方法。
PID=docker inspect --format {{.State.Pid}} <name of container>
nsenter --target $PID --mount --uts --ipc --net --pid /bin/sh
希望这对您有用
答案 4 :(得分:1)
今天我安装了docker更新(在Centos上为1.13.1-84版),从那时起,我所有的容器也遇到了相同的问题。
降级到1.13.1-75版本对我有用。
答案 5 :(得分:0)
我认为这是因为缺少权限。
尝试使用sudo运行docker,如下所示。
sudo docker exec-它绑定bash
希望这会有所帮助。
答案 6 :(得分:0)
“对等连接重置”,通常在端口存在某些不匹配时发生。好像您没有公开端口并尝试使用它,或者端口映射不正确。实际上,如果将服务a绑定到本地主机,请检查它,因为如果您要托管服务,则可能希望将其绑定到0.0.0.0
此错误可能与很多问题有关。但主要是,它与错误的端口和错误的IP绑定在一起。