Podstawy sieci kontenerów
Poznaj domyślną sieć Dockera i sieci mostkowe oraz dowiedz się, jak kontenery odnajdują się nawzajem.
Podstawy sieci kontenerów to bezpłatna lekcja Docker & DevOps Fundamentals na CoddyKit. To lekcja 1 z 4. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej Docker & DevOps Fundamentals, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs Docker & DevOps Fundamentals zawiera 4 lekcji w sumie.
Dlaczego sieci kontenerów?
Kontenery są z założenia odizolowane, co zapewnia bezpieczeństwo i przenośność. Aby jednak aplikacje były użyteczne, często muszą komunikować się ze sobą oraz ze światem zewnętrznym.
Właśnie do tego służy sieć Docker! Umożliwia kontenerom bezpieczną i wydajną komunikację.

Domyślna sieć bridge Docker
Po uruchomieniu kontenera bez określenia sieci Docker automatycznie podłącza go do domyślnej sieci bridge. Ta sieć nosi nazwę bridge.
Kontenery w tej sieci mogą komunikować się ze sobą za pomocą adresów IP, a także uzyskują dostęp do Internetu.
Sprawdzanie sieci Docker
Możesz łatwo wyświetlić wszystkie sieci Docker dostępne w systemie. Polecenie docker network ls wyświetla ich listę, a docker network inspect pokazuje szczegółową konfigurację wybranej sieci.
Spróbuj wyświetlić listę swoich sieci:
docker network lsAdresy IP kontenerów
Każdemu kontenerowi podłączonemu do sieci bridge (domyślnej lub zdefiniowanej przez użytkownika) serwer wewnętrznego DNS Docker przypisuje unikalny adres IP.
Ten adres IP umożliwia innym kontenerom w tej samej sieci nawiązanie połączenia z danym kontenerem. Sprawdźmy adres IP kontenera:
docker run --rm -it alpine ip aKomunikacja w domyślnej sieci bridge
W domyślnej sieci bridge kontenery mogą komunikować się ze sobą za pomocą przypisanych adresów IP. Adresy IP mogą się jednak zmieniać, przez co ta metoda jest mniej niezawodna w przypadku dynamicznych aplikacji.
W celu lepszego wykrywania kontenerów i komunikacji za pomocą nazw nowoczesnym i preferowanym rozwiązaniem są sieci bridge zdefiniowane przez użytkownika.
Sieci bridge zdefiniowane przez użytkownika
Sieci bridge zdefiniowane przez użytkownika oferują znaczące korzyści w porównaniu z domyślną siecią bridge:
- Automatyczne rozpoznawanie DNS: Kontenery w tej samej sieci zdefiniowanej przez użytkownika mogą odnajdywać się nawzajem za pomocą nazwy usługi (nazwy kontenera).
- Lepsza izolacja: Zapewniają lepszą izolację aplikacji.
- Możliwość konfiguracji: Dają większą kontrolę nad ustawieniami sieci.
Demo: komunikacja za pomocą nazwy
Utwórzmy niestandardową sieć, uruchommy na niej serwer WWW Nginx, a następnie użyjmy innego kontenera, aby uzyskać dostęp do serwera Nginx za pomocą jego nazwy. Zobacz, jakie to proste!
docker network create my-app-net
docker run -d --name webserver --network my-app-net nginx
docker run --rm --network my-app-net alpine sh -c "apk add curl && curl -s http://webserver"
docker rm -f webserver
docker network rm my-app-netUdostępnianie portów hostowi
Aby uzyskać dostęp do usługi kontenera z komputera hosta lub z sieci zewnętrznej, należy „opublikować” lub „zmapować” jej port za pomocą flagi -p lub --publish.
Na przykład -p 8080:80 mapuje port 8080 hosta na port 80 kontenera.
docker run -d --name my-webserver -p 8080:80 nginx
# To check, open http://localhost:8080 in your browser
# Then, clean up the container:
docker rm -f my-webserverInne sterowniki sieciowe
Oprócz sieci bridge Docker oferuje inne sterowniki sieciowe przeznaczone do konkretnych zastosowań:
- Host: Kontener współdzieli stos sieciowy hosta, tracąc izolację.
- None: Kontener nie ma interfejsów sieciowych.
- Overlay: Używany przez Docker Swarm do umożliwienia komunikacji między wieloma demonami Docker działającymi na różnych hostach.
Każdy sterownik służy innemu celowi w zależności od scenariusza wdrożenia.
Wyzwanie: sieci
Które stwierdzenia dotyczące domyślnej sieci bridge Docker oraz sieci bridge zdefiniowanych przez użytkownika są prawdziwe?
Podsumowanie: podstawy sieci
Omówiliśmy podstawy sieci Docker:
- Domyślna sieć
bridgeumożliwia kontenerom komunikację za pomocą adresów IP. - Sieci bridge zdefiniowane przez użytkownika są preferowane ze względu na automatyczne rozpoznawanie DNS na podstawie nazwy oraz lepszą izolację.
- Dowiedzieliśmy się, jak umożliwić kontenerom komunikację między sobą oraz jak udostępniać porty kontenerów hostowi.
- Krótko omówiliśmy też inne sterowniki sieciowe, takie jak
hostioverlay.
Zrozumienie sieci ma kluczowe znaczenie podczas tworzenia połączonych aplikacji skonteneryzowanych. W następnej części zajmiemy się zarządzaniem trwałymi danymi za pomocą woluminów Docker!
Często zadawane pytania
Czy lekcja „Podstawy sieci kontenerów” jest bezpłatna?
Tak — pełny tekst „Podstawy sieci kontenerów” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu Docker & DevOps Fundamentals, przejdź na CoddyKit PRO. Kurs Docker & DevOps Fundamentals zawiera 4 lekcji w sumie.
Co nauczysz się w „Podstawy sieci kontenerów”?
Poznaj domyślną sieć Dockera i sieci mostkowe oraz dowiedz się, jak kontenery odnajdują się nawzajem. Ćwiczysz Docker & DevOps Fundamentals z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.
Czy potrzebuję doświadczenia, aby zacząć Docker & DevOps Fundamentals?
Nie wymagamy żadnego doświadczenia. Docker & DevOps Fundamentals w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 1 z 4.
Ile czasu zajmuje lekcja „Podstawy sieci kontenerów”?
Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.
Czy mogę pisać i uruchamiać kod w tej lekcji Docker & DevOps Fundamentals?
Tak. Każda lekcja Docker & DevOps Fundamentals zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.
Wszystkie lekcje w tym kursie
- Podstawy sieci kontenerów
- Wolumeny Docker do przechowywania danych
- Montowania bind i tmpfs
- Niestandardowe sieci bridge i wykrywanie usług