2015-09-03 1 views
0

Мы используем docker-compose, чтобы собрать несколько контейнеров и связать их вместе.Предоставление стабильного URL-адреса для доступа к контейнеру-докеру из другого контейнера-докера

Мы должны быть в состоянии сохраняться URL в службе, запущенной в containerA в нашем хранилище данных, чтобы мы могли посмотреть его на более поздний срок, и использовать его для доступа к сервису из containerB. containerB не должен знать, работает ли служба как локальный контейнер или нет, он должен просто иметь возможность захватить URL-адрес и использовать его.

Мы можем получить адрес связанного контейнера с использованием envoronment переменных стандартным образом, например

http://$CONTAINER_A_SERVICE_PORT_9000_TCP_ADDR:$CONTAINER_A_SERVICE_PORT_9000_TCP_PORT/someresource

, но я понимаю, что если мы сохраняем этот адрес и попытаться получить доступ к службе после перезагрузки контейнеров , docker, возможно, назначил новый порт и/или ip для контейнера, и адрес мог быть инкорпорирован.

В настоящий момент все, о чем я могу думать, представляет порт контейнера на главной машине и использует общедоступный адрес хоста в качестве стабильной конечной точки для контейнера, но мне бы очень хотелось, чтобы решение, которое избегало выхода на общественной сети.

Любые идеи были бы весьма признательны.

+0

Я хотел бы использовать имя хоста serviceB, который получает положить в '/ и т.д./hosts'. – dnephin

+0

Спасибо! который будет работать при условии, что я не изменю свой контейнер, связывающий имена/псевдонимы. В значительной степени именно то, что мне нужно. Если вы разместите свой комментарий в форме ответа, я приму это! – Russell

ответ

0

Я хотел бы использовать имя хоста serviceB, который получает положить в /etc/hosts

 Смежные вопросы

  • Нет связанных вопросов^_^