# Docker Compose

<datetime class="hidden">2024-07-30T13:30</datetime>

<!--category-- Docker -->
Docker Compose est un outil pour définir et exécuter des applications multicontaineurs de docker.

En ce moment, j’utilise Docker Compose pour exploiter quelques services sur mon serveur.

- Le plus clair - mon blog (cette1)
- Cloudflared - service qui tunnele le trafic vers mon serveur
- Watchtower - un service qui vérifie les mises à jour de mes conteneurs et les relance si nécessaire.

Voici la liste des `docker-compose.yml` fichier que j'utilise pour exploiter ces services:

```yaml
services:
  mostlylucid:
    image: scottgal/mostlylucid:latest
    labels:
        - "com.centurylinklabs.watchtower.enable=true"
  cloudflared:
    image: cloudflare/cloudflared:latest
    command: tunnel --no-autoupdate run --token ${CLOUDFLARED_TOKEN}
    env_file:
      - .env
        
  watchtower:
    image: containrrr/watchtower
    container_name: watchtower
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock
    environment:
      - WATCHTOWER_CLEANUP=true
      - WATCHTOWER_LABEL_ENABLE=true
    command: --interval 300 # Check for updates every 300 seconds (5 minutes)
```