Из моего контейнера докеров я хочу получить доступ к серверу MySQL, работающему на моем хосте, в 127.0.0.1. Я хочу получить доступ к веб-серверу, запущенному в контейнере контейнера, с хоста. Я попытался это:docker: взаимный доступ к портам контейнера и хоста
docker run -it --expose 8000 --expose 8001 --net='host' -P f29963c3b74f
Но ни один из портов не отображаются как выставлялись:
$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
093695f9bc58 f29963c3b74f "/bin/sh -c '/root/br" 4 minutes ago Up 4 minutes elated_volhard
$
$ docker port 093695f9bc58
Если у меня нет --net='host'
, порты подвергаются, и я могу получить доступ к веб-серверу на контейнер.
Как хост и контейнер могут взаимно обращаться к другим портам?
Я тестирую вещи, поэтому я в порядке с докером, используя случайный порт на хосте. Из сообщения Programmerq кажется, что вы не можете открывать/отображать порты при использовании '' '--net = host'''. – user2233706
@ user2233706 уверен, вы не можете открывать порты при использовании '--net = host' (это не имеет смысла - вот почему в столбце« ports »нет ничего). Когда вы не «публикуете» порты, как ваш хозяин знает открытые порты, например. '8000-> XXXX'? порты на хосте должны быть доступны с интерфейсом 'docker0' (' IP' соответственно). – VladoDemcak