# 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](https://www.ionos.com/nl-be/digitalguide/server/configuratie/docker-compose-handleiding/) kunt [gebruiken](https://www.ionos.com/nl-be/digitalguide/server/configuratie/docker-compose-handleiding/), 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.

Tip Als u een ander besturingssysteem dan Linux wilt gebruiken, raadpleeg dan onze handleiding voor het installeren van [Docker Compose op Windows](https://www.ionos.com/nl-be/digitalguide/server/configuratie/installeer-docker-compose-op-windows/) en [Docker Compose op macOS](https://www.ionos.com/nl-be/digitalguide/server/configuratie/docker-compose-op-mac/).

## 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:

```shell
$ curl -SL https://github.com/docker/compose/releases/download/v2.17.2/docker-compose-linux-x86_64 -o /usr/local/bin/docker-compose
```

Nu kunt u Docker Compose **uitvoerrechten** geven:

```shell
$ sudo chmod +x /usr/local/bin/docker-compose
```

Gebruik optie `--version` om te controleren of Compose succesvol is geïnstalleerd.

```shell
$ docker-compose --version
```

Je krijgt de volgende uitvoer:

[![Afbeelding: Docker Compose Version](https://www.ionos.com/nl-be/digitalguide/fileadmin/_processed_/b/1/csm_docker-compose-version-ubuntu_428c28abad.webp "Docker Compose Version")](https://www.ionos.com/nl-be/digitalguide/fileadmin/DigitalGuide/Screenshots_2023/docker-compose-version-ubuntu.png) If you see the version number, Docker Compose has been successfully installed. Als de installatie mislukt, controleer dan het pad.

U kunt ook een **symbolische link** naar het pad */usr/bin* maken:

```shell
$ sudo ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose
```

### Stap 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:

```shell
$ mkdir ~/compose-test
```

Ga naar de map en maak een nieuwe map aan voor de hoofdmap van uw **Nginx-omgeving**.

```shell
$ cd ~/compose-test
$ mkdir app
```

Je kunt elke teksteditor zoals **nano** gebruiken om *index.html* aan te maken.

```shell
$ nano app/index.html
```

Hier is de HTML-code voor een voorbeeldpagina:

```html
<!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>
<div class="hash d-none" hidden>hash_2d2ce2b0fc4b3145f7fc7efcf519e12990ceca51</div><script data-shy-copy-guard>(function(){var C=[0x00AD,0x200B,0x200C,0x200D,0x2060,0xFEFF];var s=function(t){for(var i=0;i<C.length;i++){t=t.split(String.fromCharCode(C[i])).join("");}return t;};document.addEventListener("copy",function(e){var sel=document.getSelection();if(!sel||sel.isCollapsed||!e.clipboardData){return;}e.clipboardData.setData("text/plain",s(sel.toString()));try{var d=document.createElement("div");d.appendChild(sel.getRangeAt(0).cloneContents());e.clipboardData.setData("text/html",s(d.innerHTML));}catch(x){}e.preventDefault();});})();</script></body>
</html>
```

Sla het HTML-bestand op en sluit het. Maak vervolgens het bestand *docker-compose.yml* aan.

```shell
$ nano docker-compose.yml
```

De inhoud is onderverdeeld in het versienummer van de configuratie en het dienstenblok.

```YAML
version: '3.9'
services:
    web:
        image: nginx:alpine
        ports:
            - "8000:80"
        volumes:
- ./app:/usr/share/nginx/html
```

Binnen 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:

```shell
$ docker-compose up -d
```

Als 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.

```shell
$ docker-compose ps
```

De 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’.

[![Afbeelding: Docker Compose sample page](https://www.ionos.com/nl-be/digitalguide/fileadmin/_processed_/b/8/csm_docker-compose-test-page-ubuntu_f263b18904.webp "Docker Compose sample page")](https://www.ionos.com/nl-be/digitalguide/fileadmin/DigitalGuide/Screenshots_2023/docker-compose-test-page-ubuntu.png) Sample page for an Nginx container U kunt de containertoepassing stoppen met behulp van `stop`.

```shell
$ docker-compose stop
```

Tip Weet u niet zeker hoe u aan de slag moet gaan met containertools? Bekijk onze [Docker-tutorial](https://www.ionos.com/nl-be/digitalguide/server/configuratie/docker-handleiding-installatie-en-eerste-stappen/) en ons overzicht van Docker-opdrachten. Of lees meer over Docker-orkestratie met Swarm en Compose.


This is a markdown version of: [https://www.ionos.com/nl-be/digitalguide/server/configuratie/docker-compose-op-ubuntu/](https://www.ionos.com/nl-be/digitalguide/server/configuratie/docker-compose-op-ubuntu/) for AI/LLM consumption.