LoginSignup
13
18

More than 5 years have passed since last update.

docker でMACVLANを使い、ホストと同じIP空間のIPを割り当てる

Last updated at Posted at 2016-12-02

概要

ホストと同じIP空間のIPを割り当てたい。

docker public ip とか docker static ip とか調べてみたが
docker networkで閉じた空間での固定IPの話が多い印象だった。

結論

docker 1.12.0 以降?でサポートされた MACVLANを使う。

参考情報に載せたところで見つかった。

コマンド

オプションのparentについては、下の参考情報の中に、見つける方法があったと思うので、それを参照してください。

docker network create -d macvlan \
  --subnet=192.168.1.0/24 \
  --gateway=192.168.1.1 \
  -o parent=eth0 mcv

できたか確認

docker network ls

結果できている

$ docker network ls
NETWORK ID          NAME                DRIVER              SCOPE
692afa5f3461        bridge              bridge              local
0a2012c60358        host                host                local
032e489b5816        mcv                 macvlan             local
ba30b9b4c185        none                null                local

MACVLANを使って実際に試す

docker run --rm --net=mcv -it --rm alpine ping -c 4 8.8.8.8
docker run --rm --net=mcv -it --rm alpine ip -a

固定IPを割り振る

わりふれたことだけを確認する

docker run --rm \
  --net=mcv \
  --ip=192.168.1.100 \
  --rm alpine ip a

まだできていないこと

  • dockerコンテナにnginxを立てて、そこに、固定IP として振ったIPでアクセスできること

TODO
今度試す

参考情報

ドキュメント

調べていたら以下を見つけた

以下のスライドのようなネットワーク構成の場合

作り方はこちらにかいてあった

その他

13
18
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
13
18