私はDocker for Macを使用しています。私はDockerコンテナの中でnodejsベースのマイクロサービスを実行しています。私はブラウザを通してnodeのマイクロサービスをテストしたいです。実行中のDockerコンテナのIPアドレスを取得する方法は?
ホストのポートをコンテナにマッピングしたくない場合は、コンテナのdocker range ipに直接アクセスできます。この範囲は、デフォルトではホストからしかアクセスできません。コンテナのネットワークデータは以下の方法で確認できます。
docker inspect <containerNameOrId>
おそらくフィルタリングした方が良いと思います。
docker inspect <containerNameOrId> | grep '"IPAddress"' | head -n 1
通常、デフォルトの docker の ip 範囲は 172.17.0.0/16
です。すべてが正常で、特別なネットワークオプションを指定していなければ、ホストは 172.17.0.1
、最初のコンテナは 172.17.0.2
になるはずです。
**エディット もう一つのエレガントな方法は、"bash tricking"の代わりにdockerの機能を使用する方法です。
docker inspect -f "{{ .NetworkSettings.IPAddress }}" <containerNameOrId>