Implementierung der Festlegung einer festen IP beim Starten eines Docker-Containers

Implementierung der Festlegung einer festen IP beim Starten eines Docker-Containers

Netzwerktyp nach der Docker-Installation

[root@insure updev]# Docker-Netzwerk ls
NETZWERK-ID-NAME TREIBER-UMFANG
14da40175b01 Brücke Brücke lokal
65fb78c28e4f Host Host lokal
e0d0c90c1462 keine null lokal

Hinweis: Standardmäßig verwenden alle Docker-Container, die mit dem Bridge-Netzwerk gestartet werden, Bridge. Dabei handelt es sich um das Bridge-Netzwerk, das bei der Installation von Docker erstellt wird. Bei jedem Neustart des Docker-Containers erhält dieser nacheinander die entsprechende IP-Adresse. Dies führt dazu, dass sich die Docker-IP-Adresse nach dem Neustart ändert. Wenn kein Netzwerk angegeben ist, verwenden Sie --network=none. Dem Docker-Container wird dann keine LAN-IP zugewiesen.

Das Hostnetzwerk verwendet --network=host. Zu diesem Zeitpunkt wird das Netzwerk des Docker-Containers an den Host angeschlossen und die beiden können miteinander kommunizieren. Wenn Sie beispielsweise einen Webdienst in einem Container ausführen und Port 8080 überwachen, wird Port 8080 auf dem Host automatisch dem Container zugeordnet.

Erstellen eines benutzerdefinierten Netzwerks

Überprüfen Sie zunächst die automatisch zugewiesene IP-Adresse

[root@insure updev]# docker inspect -f='{{.Name}} {{.NetworkSettings.IPAddress}} {{.HostConfig.PortBindings}}' $(docker ps -aq)
/awesome_lamarr 172.17.0.4 Karte[8091/tcp:[{ 8091}]]
/priceless_leavitt 172.17.0.2 Karte[]
/clever_davinci 172.17.0.3 Karte[8080/tcp:[{ 8888}]]

Sie können jeweils nur 16 Netzwerkadressen erstellen.

[root@insure updev]# Docker-Netzwerk erstellen --subnet=172.18.0.0/16 meinNetzwerk
cf556844631a91a2a530fc07146cf03de650214ee50469675e232cd2b9e243b5
[root@updev versichern]# ifconfig
br-cf556844631a: flags=4099<UP,BROADCAST,MULTICAST> mtu 1500
inet 172.18.0.1 Netzmaske 255.255.0.0 Broadcast 172.18.255.255
Ether 02:42:90:0c:71:1e txqueuelen 0 (Ethernet)
RX-Pakete 29759 Bytes 1736558 (1,6 MiB)
RX-Fehler 0 verloren 0 Überläufe 0 Frame 0
TX-Pakete 29759 Bytes 1736558 (1,6 MiB)
TX-Fehler 0 verloren 0 Überläufe 0 Träger 0 Kollisionen 0

Erklärung: 172.18.0.1 wird vom System belegt

Erstellen Sie einen Docker-Container und starten Sie ihn

[root@insure updev]# docker run -itd -p 8091:8091 --name eurekadev --net meinnetzwerk --ip 172.18.0.2 172.16.120.194:5000/claimeureka:latest /bin/bash
a6665cd3fd2e1cb7fca1215a1e75997276b928440e6b888cda4fe3644e0434df
[root@insure updev]# docker ps -a
CONTAINER ID BILD BEFEHL ERSTELLT STATUS PORTS NAMEN
a6665cd3fd2e 172.16.120.194:5000/claimeureka:latest "java -jar /app.jar …" vor 6 Sekunden Vor 5 Sekunden aktiv 0.0.0.0:8091->8091/tcp eurekadev
 [root@insure updev]# docker inspect a6665cd3fd2e | grep IP-Adresse
  "SekundäreIP-Adressen": null,
    "IP-Adresse": "",
    "IP-Adresse": "172.18.0.2",

Hinweis: Durch den Befehl können Sie sehen, dass der Container erfolgreich gestartet wurde und die Adresse auch die von uns zugewiesene IP-Adresse ist

Dies ist das Ende dieses Artikels zum Einrichten einer festen IP-Adresse für einen Docker-Container. Weitere Informationen zu festen Docker-IP-Adressen finden Sie in früheren Artikeln auf 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, Sie werden 123WORDPRESS.COM auch in Zukunft unterstützen!

Das könnte Sie auch interessieren:
  • Docker-Bindung mit fester IP/Hostübergreifender Container-Gegenzugriffsvorgang
  • So korrigieren Sie die IP-Einstellungen in Docker
  • Docker kann nicht an eine statische feste IP-Adresse eines externen Netzwerks gebunden werden und seine Lösung
  • Detaillierte Erklärung zur festen IP-Zuweisung für Docker-Container
  • Docker-Container gibt eine feste IP/statische IP-Adresse in einem benutzerdefinierten Netzwerksegment an
  • So konfigurieren Sie eine feste IP und eine Bridge in Docker

<<:  Fassen Sie den User-Agent beliebter Browser zusammen

>>:  Keep-Alive-Multilevel-Routing-Cache-Problem in Vue

Artikel empfehlen

Beispiel für Sterne für den CSS-Bewertungseffekt

Was? Welcher Sternenmantel? Schauen wir uns zur V...

Beispielcode für HTML-Framesets

Dieser Artikel stellt ein möglichst einfaches Fra...

CentOS 6 Kompilieren und installieren Sie ZLMediaKit-Analyse

Installieren Sie ZLMediaKit auf centos6 Der Autor...

Eine kurze Diskussion über Schreibregeln für Docker Compose

Dieser Artikel stellt nichts im Zusammenhang mit ...

So erstellen Sie mit Squid einen Proxyserver für http und https

Als wir nginx eingeführt haben, haben wir nginx a...

Detaillierte Erläuterung der JS ES6-Codierungsstandards

Inhaltsverzeichnis 1. Umfang des Blocks 1.1. let ...

Detailliertes Beispiel zum Erstellen und Löschen von Tabellen in MySQL

Der Befehl zur Tabellenerstellung erfordert: Der...

Verwenden Sie Javascript, um eine dynamische QQ-Registrierungsseite zu erstellen

Inhaltsverzeichnis 1. Einleitung 1. Grundlayout 2...

Vue nutzt Amap zur Realisierung der Stadtpositionierung

In diesem Artikel wird der spezifische Code von V...