CodeGym /Kursy /Docker SELF /Tworzenie i zarządzanie sieciami

Tworzenie i zarządzanie sieciami

Docker SELF
Poziom 17 , Lekcja 1
Dostępny

2.1 Podstawowe komendy docker network

Sieci w Docker pozwalają kontenerom komunikować się między sobą i z sieciami zewnętrznymi. Komendy docker network oferują elastyczne możliwości tworzenia, konfiguracji i zarządzania sieciami, zapewniając izolację i kontrolę nad komunikacją sieciową kontenerów. W tym wykładzie szczegółowo omówimy komendy docker network i ich zastosowanie do zarządzania sieciami.

Podstawowe komendy docker network:

  1. docker network create
  2. docker network ls
  3. docker network inspect
  4. docker network connect
  5. docker network disconnect
  6. docker network rm

Tworzenie sieci: komenda docker network create

Komenda docker network create służy do tworzenia nowych sieci. Możesz tworzyć sieci z różnymi driverami, takimi jak bridge, host, overlay i macvlan.

Przykład tworzenia sieci z driverem bridge

Terminal


docker network create --driver bridge my_bridge_network 

Przykład tworzenia sieci z driverem overlay

Terminal


docker network create --driver overlay my_overlay_network 

Przykład tworzenia sieci z driverem macvlan

Terminal

docker network create --driver macvlan \
  --subnet=192.168.1.0/24   \
  --gateway=192.168.1.1 \
  -o parent=eth0 my_macvlan_network

2.2 Komendy do pracy z siecią

1. Wyświetlenie dostępnych sieci: komenda docker network ls

Komenda docker network ls wyświetla listę wszystkich sieci utworzonych w Dockerze.

Terminal


docker network ls 

Wynik komendy będzie wyglądał następująco:

Terminal


NETWORK ID          NAME                DRIVER              SCOPE
0e7e2d58fe94        bridge              bridge              local
9c84fdfc69ee        host                host                local
71cfb6a79d9e        none                null                local

2. Wyświetlenie informacji o sieci: komenda docker network inspect

Komenda docker network inspect pozwala uzyskać szczegółowe informacje o konkretnej sieci, w tym podłączone kontenery, ustawienia podsieci i bramy.

Przykład użycia:

Terminal


docker network inspect my_bridge_network 

Wynik komendy będzie zawierał informacje o sieci w formacie JSON:

JSON

[
    {
        "Name": "my_bridge_network",
        "Id": "0e7e2d58fe94",
        "Created": "2021-01-01T00:00:00.000000000Z",
        "Scope": "local",
        "Driver": "bridge",
        "EnableIPv6": false,
        "IPAM": {
            "Driver": "default",
            "Options": null,
            "Config": [
                {
                    "Subnet": "172.18.0.0/16",
                    "Gateway": "172.18.0.1"
                }
            ]
        },
        "Internal": false,
        "Attachable": false,
        "Containers": {
            "container_id": {
                "Name": "my_container",
                "EndpointID": "6c52f8c75c1e",
                "MacAddress": "02:42:ac:11:00:02",
                "IPv4Address": "172.18.0.2/16",
                "IPv6Address": ""
            }
        },
        "Options": {},
        "Labels": {}
    }
]

3. Podłączenie kontenera do sieci: komenda docker network connect

Komenda docker network connect służy do podłączenia już działającego kontenera do istniejącej sieci.

Przykład użycia:

Terminal


docker network connect my_bridge_network my_container 

4. Odłączenie kontenera od sieci: komenda docker network disconnect

Komenda docker network disconnect służy do odłączenia kontenera od sieci.

Przykład użycia:

Terminal


docker network disconnect my_bridge_network my_container 

5. Usunięcie sieci: komenda docker network rm

Komenda docker network rm służy do usunięcia sieci. Zwróć uwagę, że sieć można usunąć tylko po odłączeniu wszystkich podłączonych do niej kontenerów.

Przykład użycia:

Terminal


docker network rm my_bridge_network 

2.3 Przykłady użycia komend docker network

Przykłady wykorzystania komend docker network

Przykład 1: Tworzenie i użycie sieci typu bridge

Tworzenie sieci:

Terminal

docker network create --driver bridge my_bridge_network 

Uruchamianie kontenerów i ich podłączanie do sieci:

Terminal

docker run -d --name container1 --network my_bridge_network nginx

docker run -d --name container2 --network my_bridge_network redis 

Sprawdzanie sieci:

Terminal

docker network inspect my_bridge_network 

Wynik komendy docker network inspect zawiera szczegółowe informacje o sieci w formacie JSON. Aby wynik był bardziej czytelny, można użyć narzędzia jq:

Terminal

docker network inspect my_bridge_network | jq

To wygodne do filtrowania i strukturalnego przeglądania danych o sieci, takich jak podłączone kontenery, ich adresy IP i ustawienia podsieci.

Przykład 2: Podłączanie i odłączanie kontenerów

Uruchamianie kontenera:

Terminal

docker run -d --name my_container nginx 

Podłączanie kontenera do sieci:

Terminal

docker network connect my_bridge_network my_container 

Odłączanie kontenera od sieci:

Terminal

docker network disconnect my_bridge_network my_container 
Komentarze
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION