Hoe Docker Compose op Ubuntu te installeren
Docker Compose is bijzonder geschikt voor ontwikkel- en testomgevingen, maar ook voor kleinere productie-implementaties. We leggen uit hoe u met Compose eenvoudig Docker-applicaties op Ubuntu kunt orkestreren.
Wat zijn de vereisten voor Docker Compose op Ubuntu?
Voordat u Docker Compose kunt gebruiken, moet u ervoor zorgen dat uw systeem aan de volgende vereisten voldoet:
- Docker Engine: Compose is een uitbreiding op de Docker Engine die u moet installeren.
- Besturingssysteem: Ubuntu, sudo-gebruiker met root-rechten.
Als u een ander besturingssysteem dan Linux wilt gebruiken, raadpleeg dan onze handleiding voor het installeren van Docker Compose op Windows en Docker Compose op macOS.
Stapsgewijze handleiding voor het installeren van Docker Compose op Ubuntu
Om Docker Compose op Ubuntu te gebruiken, moet u eerst Docker Engine installeren en controleren of het correct werkt. Zodra Docker werkt, downloadt u Compose en maakt u het YAML-bestand aan om uw applicaties te configureren.
Stap 1: Download en installeer Docker Compose
Download de nieuwste versie van Docker Compose uit de officiële GitHub-repository door de volgende opdracht in een terminal in te voeren:
$ curl -SL https://github.com/docker/compose/releases/download/v2.17.2/docker-compose-linux-x86_64 -o /usr/local/bin/docker-composeshellNu kunt u Docker Compose uitvoerrechten geven:
$ sudo chmod +x /usr/local/bin/docker-composeshellGebruik optie --version om te controleren of Compose succesvol is geïnstalleerd.
$ docker-compose --versionshellJe krijgt de volgende uitvoer:

Als de installatie mislukt, controleer dan het pad.
U kunt ook een symbolische link naar het pad /usr/bin maken:
$ sudo ln -s /usr/local/bin/docker-compose /usr/bin/docker-composeshellStap 2: Configureer het bestand docker-compose.yml
Om het ontwerp van een Docker Compose YAML-bestand te demonstreren, gebruiken we de Nginx-image van de officiële Docker Hub voor de containeromgeving.
Maak eerst een nieuwe map aan in uw homedirectory:
$ mkdir ~/compose-testshellGa naar de map en maak een nieuwe map aan voor de hoofdmap van uw Nginx-omgeving.
$ cd ~/compose-test
$ mkdir appshellJe kunt elke teksteditor zoals nano gebruiken om index.html aan te maken.
$ nano app/index.htmlshellHier is de HTML-code voor een voorbeeldpagina:
<!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>htmlSla het HTML-bestand op en sluit het. Maak vervolgens het bestand docker-compose.yml aan.
$ nano docker-compose.ymlshellDe inhoud is onderverdeeld in het versienummer van de configuratie en het dienstenblok.
version: '3.9'
services:
web:
image: nginx:alpine
ports:
- "8000:80"
volumes:
- ./app:/usr/share/nginx/htmlYAMLBinnen het dienstenblok is er één dienst met de naam ‘web’. Deze is gekoppeld aan de opgegeven Nginx-image en poortomleiding. In onze configuratie worden alle verzoeken aan poort 8000 op de hostmachine omgeleid naar de webcontainer op poort 80, waar Nginx draait. Verder gebruiken we een gedeeld volume tussen de host en de container. Hierdoor is de lokale map ‘app’ toegankelijk voor de Nginx-applicatie.
Stap 3: Voer Docker Compose uit
Met het volgende commando maken we een webcontainer aan en draaien we de containeromgeving op de achtergrond:
$ docker-compose up -dshellAls de afbeelding die in het YAML-bestand is opgegeven niet op het lokale systeem aanwezig is, wordt deze automatisch gedownload.
Om te testen of de Nginx-omgeving actief is, voert u het commando ps in.
$ docker-compose psshellDe voorbeeldpagina die u eerder hebt gemaakt, is nu toegankelijk op localhost:8000 wanneer u de demo op uw computer uitvoert. Als u een externe server gebruikt, hoeft u alleen maar het IP-adres van uw server op te geven in plaats van ‘localhost’.

U kunt de containertoepassing stoppen met behulp van stop.
$ docker-compose stopshell