Как подключить контейнер Docker к локальной сети

Итак, я много гуглил за последние 3 дня, но до сих пор не могу найти правильный ответ на свою проблему.

Я запускаю Docker на Raspberry Pi 3, используя Raspbian (Джесси). Пока все отлично, сделал несколько контейнеров и т. д. Теперь проблема в том, чтобы получить доступ к контейнерам с других компьютеров в той же сети. Может кто-нибудь объяснить, как я могу сделать так, чтобы контейнеры отображались в моем списке маршрутизаторов как независимая машина? Перенаправление портов бесполезно, потому что мы используем несколько портов, и иногда, если нам нужно добавить к нему какую-то новую функцию, мы должны зафиксировать контейнер, удалить контейнер, создать новый контейнер в созданном образе и добавить новые порты для пересылки. Я много гуглил в течение нескольких дней, и это сводит меня с ума. Мне также пришлось много узнать о докере за последние 3.

Спасибо.

Система: Raspberry Pi3 | Распбиан (Джесси)

PS: Если нужна дополнительная информация, я буду рад дать ее в комментариях, спасибо


person Diogo Jesus    schedule 30.03.2017    source источник
comment
Контейнеры — это не виртуальные машины. Прочитайте эту запись в блоге.   -  person creimers    schedule 30.03.2017


Ответы (1)


возможно, вы можете попробовать «docker ps -a», чтобы проверить состояние контейнера и доступные порты.

Вот результат на моем Linux (IP-адрес 135.251.247.21):

sdn@sdn-KVM:~$ docker ps -a

ИДЕНТИФИКАТОР КОНТЕЙНЕРА
КОМАНДА СОЗДАНА СТАТУС
ПОРТЫ
ИМЕНА
be8c8289fe20 135.249.45.113:9005/onos:1.7.004
"./bin/onos-service" 3 недели назад До 7 часов
0.0.0.0:6633->6633/tcp, 6653/tcp, 0.0.0.0:8101->8101/tcp, 9876/tcp, 0.0.0.0:9191->8181/tcp onos-docker

я могу получить доступ к этому контейнеру с удаленной машины через ssh: "ssh -p 8101 [email protected]"

если вы не можете получить доступ с удаленного компьютера, вы можете попробовать получить доступ на своем локальном компьютере, «docker exec -it xxx bash», xxx — это имя контейнера.

надеюсь, что это может помочь вам!

person W.Ranger    schedule 30.03.2017
comment
да, для этого я также мог бы использовать команду sudo docker run -d -p ‹port RPI›:‹Port container› image tail -f /dev/null, но я хотел бы иметь независимые локальные IP-адреса для доступа к контейнеру, который я посмотрел по этой ссылке, но у меня это не сработало (ошибок не появилось, просто ничего не изменилось. marcelwiget.wordpress.com/2016/03/20/ - person Diogo Jesus; 30.03.2017