Невозможно выполнить команду в контейнере Docker - PullRequest
0 голосов
/ 04 декабря 2018

Я пытаюсь выполнить bash в моем док-контейнере под названием "bind" через

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 --version:

Docker version 1.13.1, build 07f3374/1.13.1

ОС:

cat /etc/redhat-release 

CentOS Linux release 7.6.1810 (Core) 

Любая помощь приветствуется.

Ответы [ 7 ]

0 голосов
/ 06 декабря 2018

, если вы используете

yum update

раньше и не знаете, для чего нужна старая версия докера, просто запустите

yum downgrade docker docker-client docker-common

, это работает для меня

0 голосов
/ 17 января 2019

Это известная проблема, которая была исправлена ​​в новых пакетах 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

Надеюсь, это работает для вас

0 голосов
/ 05 декабря 2018

Вот отчет об ошибке в bugzilla Red Hat: https://bugzilla.redhat.com/show_bug.cgi?id=1655214

0 голосов
/ 04 декабря 2018

Сегодня я установил обновление docker (версия 1.13.1-84 для Centos), и с тех пор у меня также возникает та же проблема со всеми моими контейнерами.

Работало обновление до версии 1.13.1-75для меня.

0 голосов
/ 04 декабря 2018

Кажется, это ошибка, появившаяся в недавнем обновлении 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
0 голосов
/ 04 декабря 2018

«Сброс соединения по пиру», как правило, происходит при определенном несоответствии портов.Как будто вы не открыли порт и не пытаетесь его использовать, или неправильное отображение портов.На самом деле, если служба привязана к localhost, проверьте ее, потому что, если вы хотите разместить службу, вы можете привязать ее к 0.0.0.0

. Эта ошибка может относиться ко многимвопросов.но, в основном, это согласуется с привязкой неправильных портов и неправильных IP-адресов.

0 голосов
/ 04 декабря 2018

Я думаю, это из-за отсутствия разрешений.

Попробуйте запустить docker с sudo, как показано ниже.

sudo docker exec -it bind bash

Надеюсь, это поможет.

...