Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationEventAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
0
Help us understand the problem. What are the problem?

More than 3 years have passed since last update.

Docker Toolbox + Windows7 + VirtualBox でネットワーク障害が発生する場合の暫定対応策

主旨

Windows7 + Docker Toolbox + VirtualBoxで環境構築した際に、
ネットワーク障害が発生したら、VirtualBox上のDockerサーバの/etc/resolve.confのIPアドレスをGoogle の公開DNSサーバである8.8.8.8やIPアドレス指定時に利用される10.0.2.2に変更すれば、解決するかもしれない。

上記の暫定策を行った経緯:

Windows7上に、開発環境をDocker Toolbox で構築している。
そして、利用しているうちに外部のネットワークが使えなくなる問題が発生した。github に接続できず困ってしまうことがあった。また、cucumberの@javascriptのテストで、phantomjsエラーが発生し、立ち上がっているサーバにアクセスできない問題も発生した。
この現象は、container内だけでなくDockerサーバのコンソール上でも同様だった。
どうすることもできなくなるため、Dockerサーバを再起動してcontainerを立ち上げなおして対応していた。

しかし、あるとき、Docker container(Ubuntu)上に立ち上げたRailsは、Windows7(ホストOS)上で立ち上げたブラウザからIPアドレス指定でアクセスできることに気づいた。すなわち、ネットワークそのものが使えなくなったわけではないことに気づいた。
(IPアドレス指定の場合、resolved.confで指定されていた10.0.2.3ではなく10.0.2.2が利用されていた)

ネットワーク障害の問題は、名前で引けなくなっているだけだった。

そこで、Googleで、「Docker Windows7 DNS 10.0.2.3 resolved.conf」 として検索したところ参照したページでたまたま、名前解決できない問題で上記の様にresolved.confを変更している記載があり、
参考に自分環境に適用してみたところうまくいった。

なぜ、DNSサーバが10.0.2.3が使っているうちに接続できなくなるのかは調査中。

参考サイト:
http://danielhnyk.cz/docker-machine-with-virtualbox-server-misbehaving/
https://developers.google.com/speed/public-dns/docs/using

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
0
Help us understand the problem. What are the problem?