問題
Docker立ち上げたらネットが繋がらなくなりました。
具体的には、別のDockerを立ち上げようとして
ERROR: Get https://registry-1.docker.io/v2/: net/http: request canceled while waiting for connection
(Client.Timeout exceeded while awaiting headers)
のエラーが出ました。
ブラウザで適当なURL叩いても、ターミナルでping送ってもタイムアウトしてしまう状態...
原因
ネットワーク設定においてIPが衝突してる
解決策
$ docker network ls
$ docker network inspect ネットワークID
//ここでGatewayのipアドレスを確認する
$ ifconfig
//inetアドレスを確認する
もし上記2つのアドレスが被っていれば、それが衝突の原因です。
ドッカ―側のネットワーク設定削除します。
$ docker network rm DockerID
これでネットが繋がるようになるはずです。
予防策
docker-compose.yml のnetworkで被らないIPを指定します。
service:
ServiceName:
network:
- xxx.xxx.xxx.x
指定しない場合は動的にIPが割り振られるため、上記設定が面倒だったら
ブラウザでネット立ち上げてる状態でドッカーを起動すればOK。