GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Die Installation von Docker-ce in Ubuntu 18.04 unterbricht die Internetverbindung des Hosts

Hier ist also Ihr Problem:

Docker hat den Bereich 172.17.0.1/16 zugewiesen zu Ihrem docker0 Schnittstelle. Dazu gehören alle Adressen ab 172.17.0.1 bis 172.17.255.255 . Sie werden feststellen, dass dieser Bereich Ihre DNS-Server (172.17.100.3 und 172.17.100.70 ). Was Sie haben, ist ein Routing-Problem:

Wann immer Ihr Host Ihre DNS-Server erreichen muss, sieht er, dass er bereits eine Schnittstelle im selben Netzwerk hat (docker0 ), also versucht es, Pakete über diese Schnittstelle zu routen ... die natürlich nirgendwo hingehen, weshalb Ihr DNS nicht mehr funktioniert.

Docker hat keinen einfachen Mechanismus, um einen Adressbereich von seinem automatischen Auswahlprozess auszuschließen, daher müssen Sie wahrscheinlich zwei Dinge tun, um das Problem zu lösen:

Legen Sie zunächst explizit die Adresse von docker0 fest in Ihrem /etc/docker/daemon.json . Verwenden Sie ein beliebiges Netzwerk, das nicht in Konflikt mit Ihren internen Netzwerken steht. Beispiel:

{
  "bip": "172.31.0.1/16"
}

Sie müssen Docker neu starten.

Als Nächstes verhindern Sie, dass Docker denselben Netzwerkbereich für ein benutzerdefiniertes Netzwerk auswählt (eines, das Sie explizit mit docker network create erstellen). oder implizit mit z. B. docker-compose oder docker stack ... ), erstellen Sie ein neues Netzwerk und verwenden Sie es dann nie:

docker network create --subnet 172.17.0.0/16 --config-only do_not_use

Dies sollte sowohl Ihr Problem lösen als auch verhindern, dass es in Zukunft erneut auftritt.

Aktualisieren

Docker dokumentiert tatsächlich einen wohl besseren Weg, dies zu erreichen in Wie beeinflusse ich, welche Netzwerkadressbereiche Docker während einer „Docker-Netzwerkerstellung“ auswählt?.

Dies erfordert das Festlegen dauerhafter statischer Routen auf Ihrem System, die je nach Linux-Distribution variieren.


Linux
  1. Wie richte ich den Netzwerk-Docker in Ubuntu Gnome 15.10 sauber ein?

  2. Installieren und Verwenden von Docker unter Ubuntu und Debian

  3. Docker installieren (Ubuntu)

  4. Wie installiere ich Docker unter Ubuntu 18.04?

  5. Keine Netzwerkverbindung zum/vom Docker CE-Container unter CentOS 8

Mailtrain auf Ubuntu 18.04 Server ohne Docker installieren

Richtiges Installieren von Docker unter Ubuntu [Anfängerhandbuch]

Lohnt es sich, das neue Ubuntu 18.10 zu installieren?

So installieren Sie Docker unter Ubuntu 18.04

So starten Sie das Netzwerk unter Ubuntu 22.04 neu

Ubuntu auf Ihrem Laptop oder PC installieren