Open3

「15Stepで習得 Dockerから入るKubernetes」読書メモ

orange634ntyorange634nty

docker のネットワーク周りは触ったことない(全て docker-compose にお任せしてた)のでいい機会なのでここら辺はちゃんと調べてみた。

docker network ls で確認可能

$ docker network ls
NETWORK ID          NAME                DRIVER              SCOPE
7c025d3fa64e        bridge              bridge              local
68e1e51a8f43        host                host                local
f6dcd22e2ecc        none                null                local

3つあるのはデフォルトのネットワーク

  • bridge
    • --net=<network name> などでネットワークを指定しない限り bridge に接続される
    • bridge は外部ネットワークにブリッジしてて -p オプションで外部ネットワークにポートを公開できる。
  • host
    • ホスト側のネットワークインターフェースを共有する
    • bridge は -p オプションを使って外部にポートを公開する必要があったが、host の場合はポートをリッスンするだけで通信が可能になる
  • none
    • このネットワークにつながったコンテナはネットワークインターフェースを持たない
    • つまりこのネットワークに接続されたコンテナは内外の通信が出来ない

bridge 以外は使うことはないが、Dockerに必要なため host や none ネットワークは存在する

参考
https://knowledge.sakura.ad.jp/23899/
http://docs.docker.jp/v17.06/engine/userguide/networking/dockernetworks.html