Vad är syftet med en docker-compose.yml-fil i Docker?

Vad Ar Syftet Med En Docker Compose Yml Fil I Docker



Docker compose är ett verktyg/verktyg som används för att skapa och köra applikationer som består av flera behållare. Den använder YAML-filer för att ställa in applikationstjänster. A docker-compose.yml fil är en konfigurationsfil som definierar hur flera Docker-behållare kan fungera tillsammans som en enda tjänst. Det kan starta alla tjänster med en enda ' docker-compose up ” kommando samt stoppa alla tjänster med en enda ” docker-compose down ” kommando. Dessutom kan den också användas för att skala upp utvalda tjänster vid behov.

Den här artikeln kommer att förklara:







Vad är syftet med en docker-compose.yml-fil i Docker?

Huvudsyftet med en ' docker-compose.yml ”-filen är att förenkla processen för att distribuera och hantera Docker-applikationer med flera behållare. Det används också för ytterligare ändamål, såsom:



    • Starta och stoppa flera containrar samtidigt.
    • Ange behållarberoenden.
    • Definiera och hantera nätverksanslutningar mellan containrar.
    • Hantera volymer och andra delade resurser mellan containrar.
    • Ställa in miljövariabler och andra konfigurationsalternativ för behållare.
    • Skala behållare upp eller ner efter behov.

Hur man använder en docker-compose.yml-fil i Docker?

För att se hur du skapar och använder filen docker-compose.yml i Docker, följ de medföljande steg-för-steg-instruktionerna.



Steg 1: Skapa skrivfil





På Visual Studio Code, skapa en ny fil med namnet ' docker-compose.yml ”. Efter det konfigurerar du de nödvändiga tjänsterna. Vi har till exempel konfigurerat följande tjänster:

version: '3'

tjänster:
webb:
bild: nginx: senaste
hamnar:
- '9090:80'

webb1:
bygga:.
hamnar:
- '8080:80'


I utdraget ovan:



    • den ' version ”-tangenten anger vilken version av Docker Compose-filformatet som ska användas. Här använder vi version 3.
    • den ' tjänster ”-tangenten används för att konfigurera skrivtjänsterna. Här har vi konfigurerat två tjänster, dvs. webb ' och ' webb1 ”.
    • den ' webb tjänsten använder ' nginx:senaste ' bild- och kartport ' 9090 ' på värddatorn för att porta ' 80 ” i behållaren.
    • den ' webb1 '-tjänsten bygger en bild från Docker-filen i ' . ” katalog. och ' 8080:80 ” är den tilldelade hamnen.

Steg 2: Skapa Docker-fil

Skapa nu en annan fil med namnet ' Dockerfil ' och klistra in nedanstående kod i den:

FRÅN nginx:senaste
INKÖRSPORT [ 'nginx' , '-g' , 'demon av;' ]


I utdraget ovan:

    • den ' FRÅN ”-satsen används för att definiera en basbild för behållaren, dvs. nginx:senaste ”.
    • den ' INKÖRSPORT ” används för att ställa in exekveringspunkten för behållaren.

Steg 3: Starta Compose Services

Kör sedan  ' docker-compose up kommandot tillsammans med ' -d ' alternativ för att starta skrivtjänsten i fristående läge:

docker-compose up -d



Det kan ses att komponeringstjänsten har startat framgångsrikt.

Steg 4: Verifiering

Navigera nu till de tilldelade portarna för den lokala värden och verifiera om tjänsterna körs i behållarna eller inte:


På hamn” 9090 ', den ' webb tjänsten använder ' nginx:senaste ”-bild och exekvera den.


På hamn” 8080 ', den ' webb1 '-tjänsten använder Docker-filen för att köra ' nginx ' bild.

Så här kan vi konfigurera många tjänster och köra flera behållare samtidigt med hjälp av filen 'docker-compose.yml'.

Slutsats

den ' docker-compose.yml ”-fil tillåter utvecklare att specificera alla behållare och deras konfiguration inklusive bilder, portar, volymer, nätverk, etc., i en enda fil. Det gör det enklare att skapa, starta och stoppa flera behållare som en del av en enda applikation. Det är användbart för att utveckla, utvärdera och distribuera applikationer som innehåller flera komponenter som behövs för att kommunicera med varandra. Den här artikeln förklarade syftet med filen 'docker-compose.yml' och dess användning i Docker.