私のドッカーコンテナから、127.0.0.1でホスト上で実行されているMySQLサーバにアクセスしたいとします。ホストからコンテナコンテナ上で実行されているWebサーバーにアクセスしたい私はこれを試してみました: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'
を持っていない、と私は上のWebサーバにアクセスできる場合コンテナ。
どのようにホストとコンテナが相互にポートにアクセスできますか?
私は物事をテストしているので、ドッカーはホスト上のランダムなポートを使用しても問題ありません。 programmerqの投稿から、 '' ' - net = host'''を使うときはポートを公開/マップできないようです。 – user2233706
@ user2233706 '--net = host'を使うときは、ポートを公開することはできません(それは意味がありません。 portsを公開しないと、ホストはどのように公開されたポートを知っていますか? '8000-> XXXX'?ホストのポートは 'docker0'インタフェース(それぞれ' IP')でアクセスする必要があります。 – VladoDemcak