Docker Compose er et verktøy som gjør det mulig å definere og kjøre flercontainer Docker‑applikasjoner. Med Docker Compose kan du bruke en YAML‑fil til å konfigurere applikasjonens tjenester, nettverk og volumer, slik at du kan kjøre flere containere som er sammenkoblet og administrert som én enhet.
Docker Compose ble introdusert i 2014 som en måte å forenkle håndteringen av flercontainer Docker‑applikasjoner på. Siden da har det blitt et populært verktøy i Docker‑økosystemet, og gir en enkel og effektiv måte å orkestrere containere på.
Hvordan Docker Compose fungerer
Docker Compose fungerer ved å lese en YAML‑fil som beskriver applikasjonens tjenester, nettverk og volumer. Hver tjeneste defineres som en container, og YAML‑filen angir hvordan containerne skal konfigureres og hvordan de skal kommunisere med hverandre.
Når du kjører Docker Compose, opprettes et nettverk for applikasjonen, og containerne som er definert i YAML‑filen startes. Containerne startes i den rekkefølgen som er angitt i filen, og hver container får sitt eget sett med miljøvariabler, konfigurasjonsfiler og andre ressurser.
Når containerne er i gang, gir Docker Compose et sett med kommandoer for å administrere applikasjonen, for eksempel å starte og stoppe containere, skalere tjenester og vise logger.
Bruke Docker Compose
For å bruke Docker Compose må du først lage en YAML‑fil som beskriver applikasjonen din. Her er et eksempel på en enkel Docker Compose‑YAML‑fil:
version: '3'
services:
web:
image: nginx
ports:
- "8000:80"
db:
image: postgres
environment:
POSTGRES_PASSWORD: example
I dette eksempelet har vi to tjenester: web og db. web‑tjenesten bruker nginx‑bildet og eksponerer port 8000 til verten. db‑tjenesten bruker postgres‑bildet og setter miljøvariabelen POSTGRES_PASSWORD.
For å starte applikasjonen kan du kjøre følgende kommando:
docker-compose up
Denne kommandoen leser YAML‑filen og starter containerne som er definert i filen. Deretter kan du få tilgang til web‑tjenesten ved å åpne en nettleser og gå til http://localhost:8000.
Konklusjon
Docker Compose er et kraftig verktøy for å administrere flercontainer Docker‑applikasjoner. Med Docker Compose kan du definere applikasjonen som et sett av sammenkoblede containere, noe som gjør det enklere å håndtere og skalere den. Ved å bruke en enkel YAML‑fil for å konfigurere applikasjonen, gjør Docker Compose det lett å opprette, kjøre og administrere komplekse containerbaserte applikasjoner.