Co to jest mapowanie portów w Dockerze?

Co To Jest Mapowanie Portow W Dockerze



Docker to dobrze znana platforma typu open source, która jest często używana do tworzenia, udostępniania i uruchamiania oprogramowania i aplikacji. Wykorzystuje różne komponenty do wykonywania projektów w kontenerach, takie jak obrazy Docker, silnik lub demon Docker oraz klient Docker. Jednak aby uzyskać dostęp do wewnętrznego procesu kontenera, wymagane jest mapowanie portów.

W tym poście zostaną omówione:







Co to jest mapowanie portów Dockera?

Podczas wykonywania usług lub aplikacji wewnątrz kontenera użytkownicy zwykle chcą uzyskać dostęp do aplikacji lub usług do świata zewnętrznego, a nie do wnętrza kontenera. Aby uzyskać dostęp do procesów lub usług kontenera z zewnątrz, w Dockerze wykorzystywany jest proces mapowania portów. Mapowanie portów to proces, który tworzy regułę zapory sieciowej, która odwzorowuje otwarty port kontenera na otwarty port hosta Dockera, przez który uruchamiane aplikacje lub usługi są dostępne z systemu hosta.



Jak zmapować port w Dockerze?

Aby zmapować port w Dockerze, stosuje się dwie opcje publikowania portu na hoście; “ –opublikuj” lub „-p ”. Aby zmapować port w Dockerze, postępuj zgodnie z podanymi instrukcjami.



Krok 1: Utwórz plik Dockerfile

Najpierw utwórz plik Dockerfile, który wykona prosty program HTML „ indeks.html ”. W poniższym kodzie:





  • Z Klawisz ” służy do zdefiniowania podstawowego obrazu kontenera.
  • KOPIUJ ” instrukcja służy do kopiowania „ indeks.html ” do ścieżki kontenera.
  • PUNKT WEJŚCIA ” opisują pliki wykonywalne kontenerów Dockera:
Z nginx: najnowszy
SKOPIUJ index1.html /usr/share/nginx/html/index.html
PUNKT WEJŚCIA ['nginx', '-g', 'demon wyłączony;']

Krok 2: Utwórz obraz w Dockerze

Następnie utwórz nowy obraz za pomocą wspomnianego polecenia:

docker build -t html .



Krok 3: Utwórz i zmapuj kontener na hoście

Następnie utwórz i zmapuj kontener na hoście za pomocą „ uruchomienie dokera ' Komenda. Tutaj ' -P ”opcja jest faktycznie wykorzystywana do mapowania kontenera na porcie localhost” 80 ”:

docker run -p 80:80 --nazwa html-cont html

Następnie wypisz wszystkie kontenery i sprawdź, czy port jest zmapowany, czy nie:

okno dokowane ps -a

Krok 4: Weryfikacja

Następnie sprawdź, czy „ indeks.html ” program, który jest wykonywany w kontenerze, jest dostępny na hoście, czy nie. W tym celu przejdź do „ http://localhost:80 ” URL w przeglądarce:

Jak zmapować port w Docker Compose?

Aby zmapować port w Docker Compose w celu uzyskania dostępu do usług tworzenia spoza kontenera Docker, wykonaj wymienione kroki.

Krok 1: Utwórz plik „docker-compose.yml”.

Najpierw utwórz „ docker-compose.yml ” i wklej następujące instrukcje:

  • usługi Klawisz ” definiuje usługę komponowania. Na przykład „ sieć ” usługa jest tworzona:
  • zbudować Klawisz ” służy do uzyskiwania dostępu do kontekstu kompilacji. W poniższym kodzie „ . ” oznacza, że ​​używamy pliku Docker, który znajduje się w aktualnie otwartym katalogu.
  • porty ” jest specjalnie używany do mapowania portu. Definiuje port, w którym kontener będzie udostępniał:
wersja: „3”
usługi:
sieć:
zbudować: .
porty:
-80:80

Krok 2: Uruchom usługę tworzenia wiadomości

Następnie wykonaj „ tworzenie dokerów ”, aby uruchomić usługi na porcie mapowania i wewnątrz kontenera:

tworzenie dokerów -d

Z danych wyjściowych widać, że uzyskaliśmy dostęp do „ sieć ” usługi spoza kontenera na hoście:

To wszystko o mapowaniu portów w Dockerze.

Wniosek

Mapowanie portów to proces tworzenia reguły firewalla, która odwzorowuje port kontenera na otwarty port hosta Dockera, przez który uruchamiane aplikacje lub usługi są dostępne z systemu hosta. Aby zmapować port w Dockerze, „ -p” lub „–opublikuj Opcja ” jest używana w opcji „ uruchomienie dokera ' Komenda. W pliku redagowania „ porty Klawisz ” służy do mapowania portu. Ten post pokazał, czym jest mapowanie portów w Dockerze i jak mapować port.