Inhaltsverzeichnis
Netzwerk
Versionen
Version | Bearbeiter | Änderungsdatum | Änderungsbemerkung |
0.1 | hase | 11-09-2020 | Seite angelegt |
Docker Netzwerk
Dies ist eine allgemeine Beschreibung, wie an die Docker-Container im shack RZ Netzwerk gebracht wird.
Compose Files
Das aktuelle File ist in der Shackspace-Gruppe auf Gitlab.com zu finden. Siehe
Auf den Hosts müssen noch entsprechende Linux Bridges für die existierenden VLANs angelegt werden.
Erklärung Compose File
Version
version: '2.4'
Die Version muss eine 2er Version sein, 2.4 ist die aktuellste Version. In Docker-Compose Version 3 wurden diese Einstellungsmöglichkeiten bis jetzt nur im Swarm-Mode hinzugefügt.
networks Bereich
networks: docker-vmbr100: name: docker-vmbr100 driver: ipvlan driver_opts: ipvlan_mode: l2 parent: vmbr100 ipam: config: - subnet: 10.42.0.0/20 ip_range: 10.42.14.0/25 gateway: 10.42.0.1
Der benutzte Treiber ipvlan in Verbindung mit ipvlan_mode: l2 erzeugt ein virtuelles Netzwerk, welches mit normalen Linux Bridges verglichen werden kann. Das virtuelle Netzwerk arbeitet auf OSI Layer 2, also auf der Ebene von Mac Adressen bzw. Ethernet Frames.
Es ist also im Grunde genommen ein ganz normaler „dummer“ Netzwerkswitch.
Im dem Baum ipam werden die grundlegenden Einstellungen des Subnetzes außerhalb des Docker angegeben. Hier müssen also Gateway sowie Subnetzmaske des externen Netzes angegeben werden. Zusätzlich kann hier noch eine Range angegeben werden. Das ist ein Filter, um IP Adresssenkonflikte entgegenwirken zu können.
services Bereich
services: dummy: container_name: network-dep-dummy image: williamyeh/dummy entrypoint: ["echo", "Networks generated"] networks: - docker-vmbr2 - docker-vmbr100 - docker-vmbr200 - docker-internal restart: "no"
Hier wird der folgende Docker-Container benutzt: Docker Hub williamyeh/dummy
Dieser Docker Container bekommt alle Netzwerke aus dem networks-Bereich eingetragen. Dadurch werden von Docker-Compose alle Netze beim einmaligen Starten des Containers angelegt. Der Container selbst wird nur die Meldung „Networks generated“ auswerfen. Dies bedingt sich durch das Überschreiben des Entrypoints auf den cli-Befehl echo.