Ano ang Pagkakaiba sa pagitan ng Dockerfile at Docker Compose

Ano Ang Pagkakaiba Sa Pagitan Ng Dockerfile At Docker Compose



Gumagana ang platform ng Docker sa iba't ibang bahagi at tool para sa pagbuo, pagbabahagi, at pag-deploy ng mga application at proyekto. Ang platform ng Docker ay naghahatid ng software sa maliliit na executable na pakete na tinatawag na mga lalagyan. Ang mga container na ito ay binuo at pinamamahalaan sa pamamagitan ng mga tagubilin sa Docker file at Docker compose tool.

Ang pagsulat na ito ay magpapakita:

Pagkakaiba sa pagitan ng Dockerfile at Docker Compose

Parehong ginagamit ang Dockerfile at Docker Compose para i-container ang mga application at proyekto. Ang pangunahing pagkakaiba sa pagitan ng dalawang sangkap na ito ay ang ' Dockerfile ” ay isang file ng mga tagubilin na ginagamit upang tukuyin ang template ng container ng Docker sa anyo ng isang snapshot o larawan. Gayunpaman, ang Docker compose ay isang tool na ginagamit sa Docker upang paganahin ang mga micro-service at multi-container na application.







Sa Docker compose, ang mga serbisyo at multi-container na application ay na-configure sa pamamagitan ng ' docker-compose.yml ” file at isama ang Dockerfile para tukuyin ang build context para sa container.



Paano Gumawa at Gumamit ng Dockerfile?

Upang gawin at gamitin ang Dockerfile para sa pagbuo ng snapshot para sa container, gumawa muna ng Dockerfile at isama ang mahahalagang tagubilin tulad ng base image, source file at path nito, mga executable, port, at volume. Para sa pagpapatupad, tingnan ang ibinigay na mga hakbang.



Hakbang 1: Gumawa ng File ng Programa

Una, lumikha ng isang file ng programa na pinangalanang ' index.html ” at idagdag ang sumusunod na code sa file:





< html >

< ulo >

< istilo >

katawan{

kulay ng background: itim;

}

h1{

Kulay: aquamarine;

font-style: italic;

}

< / istilo >

< / ulo >

< katawan >

< h1 > Kamusta! Maligayang pagdating sa Linuxhint Tutorial < / h1 >

< / katawan >

< / html >

Hakbang 2: Gumawa ng Dockerfile

Susunod, lumikha ng isa pang file na pinangalanang ' Dockerfile ” na lalagyan ng “ index.html ” programa. Para sa layuning ito, tukuyin ang sumusunod na mga utos o tagubilin:

  • MULA SA ” ay tumutukoy sa batayang larawan ng lalagyan.
  • KOPYA ” kinokopya o idinaragdag ang source file sa path ng container.
  • PASUKAN ” ay tumutukoy sa mga maipapatupad para sa mga lalagyan:
MULA nginx:pinakabago

Kopyahin ang index.html / usr / ibahagi / nginx / html / index.html

PASUKAN [ 'nginx' , '-g' , 'demonyo off;' ]

Hakbang 3: Gumawa ng Snapshot/Larawan ng Container

Sa susunod na hakbang, buuin ang snapshot o larawan ng container sa pamamagitan ng paggamit ng ' docker build -t ” utos. Ang pangalan ng imahe ng lalagyan ay tinukoy sa pamamagitan ng “ -t ” opsyon:



pagtatayo ng docker -t html-image .

Hakbang 4: Patakbuhin ang Container

Gumawa at simulan ang lalagyan sa pamamagitan ng bagong likhang snapshot sa pamamagitan ng paggamit ng “ tumakbo sa pantalan ” utos. Dito,' -p ” ay tumutukoy sa naglalantad na port ng container:

tumakbo sa pantalan -p 80 : 80 html-image

Para sa pag-verify, tingnan ang nakatalagang port ng lokal na host at tingnan kung ang container ay gumagana o hindi:

Paano Gumawa at Gumamit ng Compose File?

Upang i-configure ang maramihang mga lalagyan o microservice sa Docker compose, una, lumikha ng isang ' docker-compose.yml ” file at i-configure ang pagtuturo sa file. Para sa paglalarawan, sundin ang ibinigay na mga tagubilin.

Hakbang 1: Gumawa ng Compose File

Una, i-configure ang application sa isang lalagyan o iba pang mga microservice sa pamamagitan ng pagtukoy sa mahahalagang tagubilin sa file. Halimbawa, na-configure namin ang ' index.html ” program sa pamamagitan ng pag-configure ng mga sumusunod na tagubilin:

  • mga serbisyo ” key ay tumutukoy sa mga serbisyo sa compose file. Halimbawa, na-configure namin ang ' web 'at' web1 ” mga serbisyo upang patakbuhin ang HTML program.
  • magtayo ” key ay ginagamit para tukuyin ang build context para sa container. Para sa layuning ito, ang mga tagubilin sa Dockerfile ay gagamitin ng ' web ” serbisyo.
  • mga daungan ” key ay tumutukoy sa nakalantad na port ng mga container.
  • larawan ” key ay ginagamit upang tukuyin ang batayang imahe para sa serbisyo:
bersyon: '3'
mga serbisyo:
web:
bumuo: .
mga port:
- 80 : 80
web1:
larawan: html-image
mga port:
- 80

Hakbang 2: Simulan ang Container

Paganahin ang mga serbisyo sa mga lalagyan sa pamamagitan ng paggamit ng ' docker-compose up ” utos. Ang ' -d 'Ang opsyon ay ginagamit upang isagawa ang mga serbisyo sa hiwalay na mode:

docker-compose up -d

Para sa kumpirmasyon, bisitahin ang lokal na host at tingnan kung ang serbisyo ay gumagana o hindi:

Ito ay tungkol sa pagkakaiba sa pagitan ng Dockerfile at Docker compose.

Konklusyon

Parehong ginagamit ang Dockerfile at Docker compose para i-configure ang application at mga serbisyo sa container. Ang pangunahing pagkakaiba sa pagitan ng dalawang sangkap na ito ay ang Dockerfile ay tinutukoy lamang bilang isang pagtuturo o text file upang buuin ang snapshot ng lalagyan. Sa kabaligtaran, ang Docker compose ay isang tool sa pagsasaayos ng microservices na ginagamit upang i-configure ang maramihang mga application at serbisyo ng container sa magkahiwalay na mga container. Ang write-up na ito ay naglalarawan ng pagkakaiba sa pagitan ng Dockerfile at Docker compose.