Erstellen eines benutzerdefinierten Netzwerks
Um ein benutzerdefiniertes Netzwerk in Docker zu erstellen, können Sie den Befehl docker network create
verwenden. Mit diesem Befehl können Sie den Netzwerk-Treiber, das Subnetz und andere Konfigurationsoptionen spezifizieren.
Erstellen eines benutzerdefinierten Bridge-Netzwerks
Erstellen wir ein benutzerdefiniertes Bridge-Netzwerk mit dem Namen my-network
:
docker network create my-network
Sie können die Netzwerkerstellung mit dem Befehl docker network ls
überprüfen:
NETWORK ID NAME DRIVER SCOPE
a1b2c3d4e5f6 my-network bridge local
Verbinden von Containern mit dem benutzerdefinierten Netzwerk
Starten wir nun zwei Container und verbinden Sie diese mit dem benutzerdefinierten Netzwerk my-network
:
## Container 1 starten
docker run -d --name container1 --network my-network ubuntu:22.04 sleep infinity
## Container 2 starten
docker run -d --name container2 --network my-network ubuntu:22.04 sleep infinity
Sie können das Netzwerk und die verbundenen Container mit dem Befehl docker network inspect
untersuchen:
[
{
"Name": "my-network",
"Id": "a1b2c3d4e5f6",
"Created": "2023-04-18T12:34:56.789Z",
"Scope": "local",
"Driver": "bridge",
"EnableIPv6": false,
"IPAM": {
"Driver": "default",
"Options": {},
"Config": [
{
"Subnet": "172.18.0.0/16"
}
]
},
"Internal": false,
"Attachable": false,
"Ingress": false,
"ConfigFrom": {
"Network": ""
},
"ConfigOnly": false,
"Containers": {
"container1_id": {
"Name": "container1",
"EndpointID": "container1_endpoint_id",
"MacAddress": "02:42:ac:12:00:02",
"IPv4Address": "172.18.0.2/16",
"IPv6Address": ""
},
"container2_id": {
"Name": "container2",
"EndpointID": "container2_endpoint_id",
"MacAddress": "02:42:ac:12:00:03",
"IPv4Address": "172.18.0.3/16",
"IPv6Address": ""
}
},
"Options": {},
"Labels": {}
}
]
Nachdem wir nun ein benutzerdefiniertes Netzwerk erstellt und Container damit verbunden haben, können wir im nächsten Abschnitt die Kommunikation zwischen den Containern testen.