Ano ang Layunin ng isang docker-compose.yml File sa Docker?

Ano Ang Layunin Ng Isang Docker Compose Yml File Sa Docker



Ang Docker compose ay isang utility/tool ​​na ginagamit para gumawa at magsagawa ng mga application na binubuo ng maraming container. Gumagamit ito ng mga YAML file para sa pag-set up ng mga serbisyo ng application. A docker-compose.yml file ay isang configuration file na tumutukoy kung paano maaaring gumana nang magkasama ang maraming Docker container bilang isang serbisyo. Maaari nitong simulan ang lahat ng serbisyo sa isang ' docker-compose up ' utos pati na rin itigil ang lahat ng mga serbisyo gamit ang isang solong ' docker-compose down ” utos. Bukod dito, maaari rin itong gamitin upang palakihin ang mga napiling serbisyo kapag kinakailangan.

Ang artikulong ito ay magpapaliwanag:







Ano ang Layunin ng isang docker-compose.yml File sa Docker?

Ang pangunahing layunin ng ' docker-compose.yml ” file ay upang gawing simple ang proseso ng pag-deploy at pamamahala ng mga multi-container na Docker application. Ginagamit din ito para sa mga karagdagang layunin, tulad ng:



    • Pagsisimula at pagpapahinto ng maraming lalagyan nang sabay-sabay.
    • Pagtukoy sa mga dependency ng container.
    • Pagtukoy at pamamahala ng mga koneksyon sa network sa pagitan ng mga container.
    • Pamamahala ng mga volume at iba pang nakabahaging mapagkukunan sa pagitan ng mga container.
    • Pagtatakda ng mga variable ng kapaligiran at iba pang mga opsyon sa configuration para sa mga container.
    • Pag-scale ng mga lalagyan pataas o pababa kung kinakailangan.

Paano Gumamit ng isang docker-compose.yml File sa Docker?

Upang makita kung paano gumawa at gumamit ng docker-compose.yml file sa Docker, sundin ang ibinigay na sunud-sunod na mga tagubilin.



Hakbang 1: Gumawa ng Compose File





Sa Visual Studio Code, lumikha ng isang bagong file na pinangalanang ' docker-compose.yml ”. Pagkatapos nito, i-configure ang mga kinakailangang serbisyo. Halimbawa, na-configure namin ang mga sumusunod na serbisyo:

bersyon: '3'

mga serbisyo:
web:
imahe: nginx: pinakabagong
mga port:
- '9090:80'

web1:
bumuo: .
mga port:
- '8080:80'


Sa snippet sa itaas:



    • Ang ' bersyon ” key ay tumutukoy sa bersyon ng Docker Compose file format na gagamitin. Dito, ginagamit namin ang bersyon 3.
    • Ang ' mga serbisyo ” key ay ginagamit upang i-configure ang mga serbisyo ng pag-email. Dito, na-configure namin ang dalawang serbisyo i.e., ' web 'at' web1 ”.
    • Ang ' web 'Ang serbisyo ay gumagamit ng ' nginx:pinakabago 'port ng larawan at mapa' 9090 'sa host machine sa port' 80 ” sa lalagyan.
    • Ang ' web1 'Ang serbisyo ay bumubuo ng isang imahe mula sa Docker file sa ' . ” direktoryo. at ' 8080:80 ” ang nakalaan na port.

Hakbang 2: Lumikha ng Docker File

Ngayon, lumikha ng isa pang file na pinangalanang ' Dockerfile ” at i-paste ang code sa ibaba dito:

MULA nginx:pinakabago
PASUKAN [ 'nginx' , '-g' , 'demonyo off;' ]


Sa snippet sa itaas:

    • Ang ' MULA SA 'Ang pahayag ay ginagamit upang tukuyin ang isang batayang imahe para sa lalagyan i.e., ' nginx:pinakabago ”.
    • Ang ' PASUKAN ” ay ginagamit para itakda ang execution point para sa container.

Hakbang 3: Simulan ang Mga Serbisyo sa Pag-email

Pagkatapos, isagawa ang  “ docker-compose up 'utos kasama ang' -d ” na opsyon upang simulan ang serbisyo ng pag-email sa hiwalay na mode:

docker-compose up -d



Makikita na matagumpay na nagsimula ang serbisyo ng pag-email.

Hakbang 4: Pag-verify

Ngayon, mag-navigate sa mga nakalaan na port ng lokal na host at i-verify kung ang mga serbisyo ay gumagana sa mga lalagyan o hindi:


Sa port ' 9090 ', ang ' web 'Ang serbisyo ay gumagamit ng ' nginx:pinakabago ” larawan at pagsasagawa nito.


Sa port ' 8080 ', ang ' web1 'Ang serbisyo ay gumagamit ng Docker file upang patakbuhin ang ' nginx ” larawan.

Ito ay kung paano namin mako-configure ang maraming serbisyo at magpatakbo ng maraming container nang sabay-sabay gamit ang 'docker-compose.yml' na file.

Konklusyon

Ang ' docker-compose.yml ” file ay nagpapahintulot sa mga developer na tukuyin ang lahat ng mga container at ang kanilang configuration kasama ang mga larawan, port, volume, network, atbp., sa isang file. Pinapadali nitong gumawa, magsimula, at huminto ng maraming container bilang bahagi ng iisang application. Ito ay kapaki-pakinabang para sa pagbuo, pagsusuri, at pag-deploy ng mga application na naglalaman ng maraming bahagi na kinakailangan upang makipag-usap sa isa't isa. Ipinaliwanag ng artikulong ito ang mga layunin ng 'docker-compose.yml' na file at ang paggamit nito sa Docker.