---
title: Caddy
created: 2026-06-06
updated: 2026-06-06
type: app
tags: [catalogue, reverse-proxy, web-server, go, auto-hebergement]
confidence: high
contested: false
sources: [https://selfh.st/apps/?tag=Reverse+Proxy, https://caddyserver.com/]
---
# 🚦 Caddy

> **Serveur web et reverse proxy moderne écrit en Go**. Réputation : HTTPS automatique, configuration minimale, performance solide.

## 📋 Informations Générales

| Champ | Valeur |
| :--- | :--- |
| **Site web** | [caddyserver.com](https://caddyserver.com/) |
| **GitHub** | [caddyserver/caddy](https://github.com/caddyserver/caddy) |
| **License** | Apache-2.0 |
| **Langage** | Go |
| **Étoiles GitHub** | 73k ⭐ |
| **Dernière MAJ** | 2026-06-05 |
| **Catégorie** | [[cat-reverse-proxy|Reverse Proxy]], Web Server |

## 📝 Description

**Caddy** est un **serveur web open-source** qui a révolutionné le monde du reverse proxy en rendant **HTTPS automatique** par défaut. Caractéristiques :

- ✅ **HTTPS automatique** via Let's Encrypt (zero config)
- ✅ **Configuration ultra-simple** (Caddyfile)
- ✅ **HTTP/2 et HTTP/3 (QUIC)** par défaut
- ✅ **Reverse proxy** avec load balancing
- ✅ **Plugins** pour étendre les fonctionnalités
- ✅ **Cross-platform** : Linux, Windows, macOS, Docker, ARM
- ✅ **Single binary** : pas de dépendances

**Public cible** : utilisateurs qui veulent **un truc qui marche out-of-the-box**, sans se battre avec des configs Nginx/Traefik pendant des heures.

## 🚀 Installation

### Option 1 : Docker Compose (recommandé)

```yaml
# docker-compose.yml
version: '3.8'
services:
  caddy:
    image: caddy:2
    container_name: caddy
    restart: unless-stopped
    ports:
      - "80:80"
      - "443:443"
    volumes:
      - ./Caddyfile:/etc/caddy/Caddyfile
      - caddy_data:/data
      - caddy_config:/config
    networks:
      - proxy

networks:
  proxy:
    external: true

volumes:
  caddy_data:
  caddy_config:
```

### Caddyfile (exemple)

```caddyfile
# /etc/caddy/Caddyfile
# Configuration ultra-simple : HTTPS automatique !

# Site principal
example.com {
    reverse_proxy app1:8080
}

# Sous-domaine
api.example.com {
    reverse_proxy app2:5000
}

# Avec auth basique
admin.example.com {
    basicauth {
        admin $2a$14$... # hash bcrypt
    }
    reverse_proxy admin-app:9000
}
```

> ⚡ C'est tout ! Pas de certbot, pas de configuration SSL. **Caddy fait tout tout seul**.

### Option 2 : Binaire natif

```bash
# Installation sur Linux
curl -fsSL https://get.caddyserver.com | bash -s personal

# Ou via package manager
sudo apt install caddy
```

## ⚙️ Configuration Initiale

1. **Écrire un Caddyfile** (voir exemple ci-dessus)
2. **Monter le dossier** contenant le Caddyfile dans le conteneur
3. **Lancer** : Caddy va automatiquement :
   - Générer les certs Let's Encrypt
   - Configurer HTTPS
   - Reload la config à la volée (modifié = `caddy reload` ou auto-reload)

## 🔄 Alternatives

### Open Source
- [[app-traefik]] — Plus adapté aux stacks Docker (auto-discovery)
- [[app-nginx-proxy-manager]] — Si vous voulez une GUI
- [[app-haproxy]] — Pour la haute performance

### Comparaison Caddy vs Traefik

| Critère | Caddy | Traefik |
| :--- | :--- | :--- |
| HTTPS auto | ✅ Natif | ✅ Natif (via Let's Encrypt) |
| Config | **Caddyfile** (très simple) | Labels Docker ou YAML |
| Auto-discovery Docker | ❌ Manuel | ✅ Natif |
| Load balancing | ✅ | ✅ |
| HTTP/3 | ✅ | ✅ |
| Plugins | ✅ (build custom) | ✅ (catalogue) |
| API dynamique | ✅ | ✅ |

**Verdict** : 
- **Caddy** pour un setup simple (peu de services, config stable)
- **Traefik** pour des stacks Docker complexes (auto-discovery, services qui apparaissent/disparaissent)

### Propriétaires (ce que Caddy remplace)
- **Cloudflare Pro** (avec Workers)
- **AWS CloudFront** (en partie)
- **Cloudflare Tunnel** + **Cloudflare Access** (combo Caddy + Authentik)

## 🔐 Sécurité

- **HTTPS par défaut** : aucun risque d'oublier de configurer TLS
- **Headers de sécurité** automatiques (HSTS, X-Frame-Options)
- **Rate limiting** (plugin disponible)
- **OCSP Stapling** activé par défaut
- **Certificate Transparency** log

## 📚 Ressources

- [Documentation officielle](https://caddyserver.com/docs/)
- [Caddyfile référence](https://caddyserver.com/docs/caddyfile)
- [Communauté](https://caddy.community/)

## Pages Liées
- [[cat-reverse-proxy]] — Catégorie Reverse Proxy
- [[app-traefik]] — Concurrent principal
- [[tls-https]] — HTTPS / TLS
- [[comparatif-reverse-proxy]] — Comparaison détaillée
- [[securisation-home-lab]] — Sécurité
