第33回 Dockerコンテナ同士の通信方法、フラットなネットワークを作る(後編)古賀政純の「攻めのITのためのDocker塾」(4/4 ページ)

» 2016年12月21日 08時00分 公開
前のページへ 1|2|3|4       

nsenterの罠

 上記のnsenterは、いったん起動したコンテナに対して、ホストOSから固定IPアドレスを何度も変更できるため非常に便利なのですが、注意点もあります。それは、nsenterによってIPアドレスを変更した場合、「docker inspect」によって表示されるコンテナのIPアドレスの値が、コンテナ起動時にDockerエンジンによって自動的に付与されたままの値であるということです。

 先程の例では、コンテナtest03のIPアドレスを172.16.0.2/16から、172.16.0.3/16に変更しました。しかし、「docker inspect」でコンテナtest02のIPアドレスを調べてみると、コンテナ起動時にDockerエンジンによって自動的に付与された古いIPアドレスが表示されます。


# docker inspect --format '{{.NetworkSettings.IPAddress}}' test03
172.16.0.2

 コンテナに付与した新しいIPアドレス(172.16.0.3)と、docker inspectによって得られるIPアドレス(172.16.0.2)との不一致が起きていると分かります。したがって、nsenterを使ってIPアドレスを変更した場合、そのコンテナのIPアドレス管理はdocker inspectで行うべきではありません。

[つづく]

古賀政純(こが・まさずみ)

日本ヒューレット・パッカード株式会社 オープンソース・Linuxテクノロジーエバンジェリスト。兵庫県伊丹市出身。1996年頃からオープンソースに携わる。2000年よりUNIXサーバーのSE及びスーパーコンピューターの並列計算プログラミング講師、SIを経験。2006年、米国ヒューレット・パッカードからLinux技術の伝道師として「OpenSource and Linux Ambassador Hall of Fame」を2年連続受賞。プリセールスMVPを4度受賞。現在は日本ヒューレット・パッカードにて、Hadoop、Spark、Docker、Linux、FreeBSDなどのサーバー基盤のプリセールスSE、文書執筆を担当。日本ヒューレット・パッカードが認定するオープンソース・Linux テクノロジーエバンジェリストとして、メディアでの連載記事執筆、講演活動なども行っている。Red Hat Certified Virtualization Administrator, Novell Certified Linux Professional, Red Hat Certified System Administrator in Red Hat OpenStack, Cloudera Certified Administrator for Apache Hadoopなどの技術者認定資格を保有。著書に「OpenStack 実践ガイド」「Docker 実践ガイド」「CentOS 7実践ガイド」「Ubuntu Server実践入門」などがある。趣味はレーシングカートとビリヤード。古賀氏の最新記事が読めるブログはこちら


前のページへ 1|2|3|4       

Copyright © ITmedia, Inc. All Rights Reserved.

注目のテーマ