広告
2022/10/01

DockerコンテナのIPアドレスはdocker inspectで調べる

タグ:linux

Dockerで起動したコンテナのプライベートIPアドレスは、特に設定しないと 自動で割り当てられる。 コンテナ間の通信などを設定するうえでIPアドレスが必要になったらこれ を調べる必要が出る。
このときはdocker inspect [コンテナid or コンテナ名]を使う。
    $ sudo docker inspect grafana | grep IPAddress  # grafanaはサンプル用コンテナ名
    (中略)
    "Networks": {
      (中略)
          "Gateway": "172.21.0.1",
          "IPAddress": "172.21.0.2",
          "IPPrefixLen": 16,
          "IPv6Gateway": "",
          (中略)
      }
  }
  
のようにコンテナ情報が出力されるので、"Networks"の項目を探してその中のIPAddressを拾う。

とはいえinspectの出力はかなり詳細で長い。 そこでgrepでIPアドレス行だけ抜き出すのもよい。
    $ sudo docker inspect grafana | grep IPAddress  # grafanaはサンプル用コンテナ名
    "SecondaryIPAddresses": null,
    IPAddress": "",
    "IPAddress": "172.21.0.2",  # ここが欲しかったIPアドレスである
  


動作確認したバージョン

  • OS: Ubuntu 20.04.4 LTS
  • Docker version 20.10.17, build 100c701