docker 0.11のHost networkingを試してみた
dockerの最新版0.11がリリースされたので、
新しい機能のHost Networkingを試した際のメモ。
まずはさくっとアップデートする。
現在のバージョン確認
$ docker -v Docker version 0.10.0, build dc9c28f
アップデート
$ sudo apt-get install lxc-docker
バージョン確認。OK。
$ docker -v Docker version 0.11.1, build fb99f99
http://blog.docker.io/2014/05/docker-0-11-release-candidate-for-1-0/
に書いてある通りに--net=hostを指定してコンテナを起動する
$ sudo docker run -it --net=host ubuntu/base /bin/bash
起動できたのでIPアドレスを確認してみる
root@panda:/# ip a 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo 2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000 link/ether 00:15:5d:0a:d0:05 brd ff:ff:ff:ff:ff:ff inet 172.19.10.219/24 brd 172.19.10.255 scope global eth0 3: docker0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN link/ether 56:84:7a:fe:97:99 brd ff:ff:ff:ff:ff:ff inet 172.17.42.1/16 scope global docker0
今まではコンテナを起動する際に
$ sudo docker run -it -p 8080:80 -p 2222:22 ubuntu/base /bin/bash
のようにしてポートフォワーディングでコンテナの80番ポートや22番ポートにアクセスしていたが、--net=hostを指定することで、コンテナのポートを直接叩くことができるようになる。