Ano ang Port Mapping sa Docker?

Ano Ang Port Mapping Sa Docker



Ang Docker ay isang kilalang at open-source na platform na kadalasang ginagamit upang lumikha, magbahagi at magpatakbo ng software at mga application. Gumagamit ito ng iba't ibang bahagi upang maisagawa ang mga proyekto sa loob ng mga lalagyan tulad ng mga larawan ng Docker, Docker engine o daemon, at kliyente ng Docker. Gayunpaman, upang ma-access ang panloob na proseso ng lalagyan, kinakailangan ang port mapping.

Tatalakayin ng post na ito ang:







Ano ang Docker Port Mapping?

Habang isinasagawa ang mga serbisyo o application sa loob ng container, karaniwang gustong i-access ng mga user ang app o mga serbisyo sa labas ng mundo kaysa sa loob ng container. Upang ma-access ang mga proseso o serbisyo ng container mula sa labas, ginagamit ang proseso ng port mapping sa Docker. Ang port mapping ay isang proseso na lumilikha ng panuntunan ng firewall na nagmamapa sa bukas na port ng container sa bukas na port ng Docker host kung saan naa-access ang mga nagpapatupad na application o serbisyo mula sa host system.



Paano Mag-mapa ng Port sa Docker?

Upang i-map ang isang port sa Docker, dalawang opsyon ang ginagamit upang i-publish ang port sa host; “ –publish” o “-p ”. Upang i-map ang isang port sa Docker, sundin ang ibinigay na mga tagubilin.



Hakbang 1: Gumawa ng Dockerfile

Una, lumikha ng Dockerfile na magpapatupad ng simpleng HTML program ' index.html ”. Sa ibabang code:





  • MULA SA Ang ” key ay ginagamit upang tukuyin ang batayang larawan ng lalagyan.
  • KOPYA 'Ang pahayag ay ginagamit upang kopyahin ang ' index.html ” file sa landas ng lalagyan.
  • PASUKAN ” ay naglalarawan sa mga executable ng mga container ng Docker:
MULA nginx:pinakabago
Kopyahin ang index1.html /usr/share/nginx/html/index.html
ENTRYPOINT ['nginx', '-g', 'daemon off;']

Hakbang 2: Lumikha ng Larawan sa Docker

Susunod, lumikha ng bagong imahe gamit ang nabanggit na command:

docker build -t html .



Hakbang 3: Gumawa at Imapa ang Container sa Host

Susunod, gawin at imapa ang container sa host sa pamamagitan ng “ tumakbo sa pantalan ” utos. Dito, ang ' -p 'Ang opsyon ay aktwal na ginagamit upang imapa ang lalagyan sa localhost port ' 80 ”:

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

Susunod, ilista ang lahat ng mga lalagyan at i-verify kung ang port ay nakamapa o hindi:

docker ps -a

Hakbang 4: Pag-verify

Susunod, i-verify kung ang ' index.html ” na programa na isinasagawa sa loob ng lalagyan ay maa-access sa host o hindi. Para sa layuning ito, mag-navigate sa ' http://localhost:80 ” URL sa browser:

Paano i-mapa ang Port sa Docker Compose?

Upang i-map ang port sa Docker Compose para ma-access ang mga serbisyo ng compose mula sa labas ng container ng Docker, sundin ang mga nakalistang hakbang.

Hakbang 1: Gumawa ng 'docker-compose.yml' na File

Una, lumikha ng ' docker-compose.yml ” file at i-paste ang sumusunod na mga tagubilin:

  • mga serbisyo Tinutukoy ng key ng ” ang serbisyo ng pagbubuo. Halimbawa, ang ' web ” serbisyo ay nilikha:
  • magtayo ” key ay ginagamit para ma-access ang build context. Sa code sa ibaba, ang “ . ” ibig sabihin ginagamit namin ang Dockerfile na nakalagay sa kasalukuyang nakabukas na direktoryo.
  • mga daungan ” key ay partikular na ginagamit upang i-map ang port. Tinutukoy nito ang port kung saan ilalantad ng container:
bersyon: '3'
mga serbisyo:
web:
bumuo: .
mga port:
-80:80

Hakbang 2: Ipatupad ang Serbisyo ng Pag-email

Susunod, isagawa ang ' docker-compose up ” utos upang paganahin ang mga serbisyo sa port ng pagmamapa at sa loob ng lalagyan:

docker-compose up -d

Mula sa output, makikita mo na na-access namin ang ' web ” mga serbisyo mula sa labas ng container sa host:

Iyon ay tungkol sa port mapping sa Docker.

Konklusyon

Ang port mapping ay isang proseso ng paglikha ng panuntunan ng firewall na nagmamapa sa port ng container sa bukas na port ng Docker host kung saan naa-access ang mga nagpapatupad na application o serbisyo mula sa host system. Upang i-map ang port sa Docker, ang ' -p” o “–publish Ginagamit ang opsyon sa ' tumakbo sa pantalan ” utos. Sa compose file, ang ' mga daungan ” key ay ginagamit upang i-map ang port. Ipinakita ng post na ito kung ano ang port mapping sa Docker at kung paano imapa ang port.