Slik installerer du Docker Compose på Ubuntu
Docker Compose egner seg spesielt godt for utviklings- og testmiljøer, men også for mindre produksjonsdistribusjoner. Vi forklarer hvordan du enkelt kan koordinere Docker-applikasjoner på Ubuntu med Compose.
Hva er kravene til Docker Compose på Ubuntu?
Før du kan bruke Docker Compose, må du forsikre deg om at systemet ditt oppfyller følgende forutsetninger:
- Docker Engine: Compose er en utvidelse til Docker Engine som du må installere.
- Operativsystem: Ubuntu, sudo-bruker med root-rettigheter.
Hvis du bruker et annet operativsystem enn Linux, kan du se veiledningen vår om hvordan du installerer Docker Compose på Windows og Docker Compose på macOS.
Trinnvis veiledning for installasjon av Docker Compose på Ubuntu
For å bruke Docker Compose på Ubuntu må du først installere Docker Engine og kontrollere at den fungerer som den skal. Når Docker er i gang, laster du ned Compose og oppretter en YAML-fil for å konfigurere applikasjonene dine.
Trinn 1: Last ned og installer Docker Compose
Last ned den nyeste versjonen av Docker Compose fra det offisielle GitHub-arkivet ved å skrive inn følgende kommando i en terminal:
$ curl -SL https://github.com/docker/compose/releases/download/v2.17.2/docker-compose-linux-x86_64 -o /usr/local/bin/docker-composeshellNå kan du gi Docker Compose kjørings rettigheter:
$ sudo chmod +x /usr/local/bin/docker-composeshellBruk alternativ --version for å sjekke om Compose ble installert.
$ docker-compose --versionshellDu får følgende utdata:

Hvis installasjonen mislykkes, må du sjekke banen.
Du kan også opprette en symbolsk lenke til banen /usr/bin:
$ sudo ln -s /usr/local/bin/docker-compose /usr/bin/docker-composeshellTrinn 2: Konfigurer filen docker-compose.yml
For å vise hvordan en Docker Compose YAML-fil er utformet, bruker vi Nginx-bildet fra den offisielle Docker Hub-siden til containermiljøet.
Opprett først en ny mappe i hjemmekatalogen din:
$ mkdir ~/compose-testshellGå til katalogen og opprett en ny mappe som skal fungere som rotkatalog for Nginx-miljøet ditt.
$ cd ~/compose-test
$ mkdir appshellDu kan bruke en hvilken som helst tekstredigerer, for eksempel nano, til å opprette index.html.
$ nano app/index.htmlshellHer er HTML-koden for en eksempelside:
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>Docker Compose Test</title>
</head>
<body>
<h1>This is a Docker Compose Test Page for an Nginx container.</h1>
</body>
</html>htmlLagre og lukk HTML-filen, og opprett filen docker-compose.yml.
$ nano docker-compose.ymlshellInnholdet er delt inn i konfigurasjonens versjonsnummer og tjenesteblokken.
version: '3.9'
services:
web:
image: nginx:alpine
ports:
- "8000:80"
volumes:
- ./app:/usr/share/nginx/htmlYAMLI tjenesteblokken finnes det én enkelt tjeneste med navnet «web». Den er knyttet til det angitte Nginx-bildet og portviderekoblingen. I vår konfigurasjon blir alle forespørsler til port 8000 på vertsmaskinen viderekoblet til web-containeren på port 80, der Nginx kjører. Videre bruker vi et delt volum mellom verten og containeren. Dette gjør den lokale «app»-mappen tilgjengelig for Nginx-applikasjonen
Trinn 3: Kjør Docker Compose
Med følgende kommando oppretter vi en webbeholder og kjører beholdermiljøet i bakgrunnen:
$ docker-compose up -dshellHvis bildet som er angitt i YAML-filen ikke finnes på det lokale systemet, vil det lastes ned automatisk.
For å sjekke om Nginx-miljøet kjører, skriver du inn kommandoen ps.
$ docker-compose psshellEksempelsiden du opprettet tidligere, er nå tilgjengelig på localhost:8000 når du kjører demoen på din egen maskin. Hvis du bruker en ekstern server, angir du bare serverens IP-adresse i stedet for «localhost».

Du kan stoppe containerprogrammet ved å bruke stop.
$ docker-compose stopshell