2017-02-18 5 views
0

У вас есть две бегущие докерные контейнеры, Боб и Алиса, слушая. Пройдя третий процесс, Джим, который разговаривает с Бобом и Алисой. При выполнении этой команды:Docker: сброс соединения с помощью одноранговой сети

docker run --net home_default --link alice --link bob -e BOB_URI=http://bob:8080/v3 -e ALICE_URI=http://alice:8080/v1 talker 

Я вижу журналы на сервере боб:

http: panic serving 172.18.0.7:35762: write tcp 172.18.0.5:8080->172.18.0.7:35762: write: connection reset by peer 

ли я не Наладка ссылки правильно? Могут ли серверы не разговаривать с текущим процессом

ответ

1

You don't need to use links on a custom network как пользовательская сеть предоставляет все функции, которые --link делает для сети docker0 по умолчанию.

При использовании ссылок в пользовательской сети они выполняют slightly different role of setting up and alias.

docker run --net home_default --name bob -d alpine sleep 60 
docker run --net home_default alpine ping -c 4 bob 
docker run --net home_default --link bob:bob1 alpine ping -c 4 bob1 

docker run --net home_default --name alice -d alpine sleep 60 
docker run --net home_default alpine ping -c 4 alice 
docker run --net home_default --link alice:alica1 alpine ping -c 4 alice1 

Я бы сказал, что проблема заключается в вашем обслуживании, а не в установке Docker.

+0

Служба работает отлично стоять отдельно. Заметил, что он по-прежнему ведет себя так же, когда не связан. –

+0

Интересно ... Является ли 'home_default' стандартной сетью docker brdige? Мост-сети - это стандартный мост linux с подключенными виртуальными интерфейсами, поэтому не ожидается слишком много проблем с ними. Скорее всего, если вы используете оверлейную сеть или один из других драйверов. – Matt

+0

Это настройка как мост. –