Initial vault setup

This commit is contained in:
2026-06-09 18:40:21 +02:00
commit bda02d587f
3692 changed files with 402457 additions and 0 deletions
+130
View File
@@ -0,0 +1,130 @@
---
title: Dockpeek
created: 2026-06-07
updated: 2026-06-07
type: app
tags: [catalogue, docker, securite, dashboard, python, auto-hebergement]
confidence: high
contested: false
sources: [https://selfh.st/apps/?tag=Docker, https://github.com/dockpeek/dockpeek]
---
# 🐳 Dockpeek
> **Le tableau de bord de vos ports exposés** : voyez d'un coup d'œil quels conteneurs Docker ont des ports ouverts sur votre réseau, et à qui ils sont accessibles. L'outil idéal pour auditer la surface d'attaque d'un homelab.
## 📋 Informations Générales
| Champ | Valeur |
| :--- | :--- |
| **Site web** | (GitHub) |
| **GitHub** | [dockpeek/dockpeek](https://github.com/dockpeek/dockpeek) |
| **License** | MIT |
| **Langage** | Python (Flask) |
| **Étoiles GitHub** | 1795 ⭐ |
| **Dernière MAJ** | 2026-05-28 |
| **Catégorie** | [[cat-docker\|Docker]] |
## 📝 Description
**Dockpeek** est un **dashboard web minimaliste** qui interroge le daemon Docker pour lister tous les conteneurs en cours d'exécution, leurs ports mappés, et — surtout — **qui peut y accéder** (localhost, réseau Docker, IP de l'hôte). C'est un outil d'**audit de surface d'attaque** pensé pour les homelabs.
L'idée : vous avez 30 conteneurs, vous ne vous souvenez plus de tous les ports mappés sur `0.0.0.0`, et vous ne savez pas si votre base de données exposée sur `5432` est accessible depuis Internet. Dockpeek répond en un coup d'œil.
-**Détection automatique des ports mappés** sur `0.0.0.0`, `127.0.0.1`, ou IP spécifique
-**Indicateurs visuels** : vert (sûr, localhost), orange (LAN), rouge (0.0.0.0 = Internet)
-**Scan UPnP / NAT-PMP** : détecte si votre box/routeur a forwardé des ports vers votre hôte Docker
-**Multi-hôte** : peut superviser plusieurs daemons Docker distants (via socket SSH)
-**Page de statut publique** : utile pour partager un inventaire avec l'équipe
-**Léger** : Python + Flask, pas de base de données, peu de RAM consommée
-**Pas de modification** : c'est un outil d'audit **read-only**, il n'arrête/ne touche jamais vos conteneurs
**Dockpeek vs [[app-portainer|portainer]]** : Portainer fait *tout* (gestion, déploiement, MAJ…) ; Dockpeek fait *une seule chose* (audit des ports) mais le fait bien. C'est le complément idéal de Portainer. Dockpeek vs `docker ps` : Dockpeek ajoute la couche d'intelligence réseau (qui peut joindre ce port ?).
## 🚀 Installation
### Docker Compose (recommandé)
```yaml
# docker-compose.yml
version: '3.8'
services:
dockpeek:
image: ghcr.io/dockpeek/dockpeek:latest
container_name: dockpeek
restart: unless-stopped
ports:
- "8000:8000" # Web UI
volumes:
- /var/run/docker.sock:/var/run/docker.sock:ro # ⚠️ lecture seule seulement
environment:
- TZ=Europe/Paris
- DP_HOSTNAME=homelab
labels:
- "traefik.enable=true"
- "traefik.http.routers.dockpeek.rule=Host(`dockpeek.example.com`)"
- "traefik.http.routers.dockpeek.entrypoints=websecure"
- "traefik.http.routers.dockpeek.tls.certresolver=letsencrypt"
```
### Python (sans Docker)
```bash
git clone https://github.com/dockpeek/dockpeek.git
cd dockpeek && pip install -r requirements.txt
python -m dockpeek
```
## ⚙️ Configuration Initiale
1. **Monter le socket Docker en read-only** : `:ro` est indispensable, Dockpeek n'écrit rien
2. **Accéder à l'UI** : `http://IP:8000`
3. **Vérifier la liste des conteneurs** : tous les conteneurs actifs s'affichent avec leurs ports mappés
4. **Auditer la colonne "Bind"** : repérer les conteneurs liés à `0.0.0.0` et décider si c'est intentionnel
5. **Lancer un scan UPnP** (bouton dans l'UI) pour voir si votre box a forwardé un port
6. **Ajouter un second hôte Docker distant** dans la config pour superviser un cluster
## 🔄 Alternatives
### Open Source
- **Portainer** ([[app-portainer]]) — GUI complète, fait beaucoup plus que l'audit
- **Dozzle** ([[app-dozzle]]) — viewer de logs, pas d'audit réseau
- **Docker Bench for Security** — script d'audit sécurité complet (CIS)
- **Trivy** — scanner de vulnérabilités d'images, pas d'audit réseau
- **nmap + greffons** — plus bas niveau
### Comparaison Dockpeek vs alternatives
| Critère | Dockpeek | Portainer | Docker Bench | Trivy |
| :--- | :--- | :--- | :--- | :--- |
| Audit ports exposés | ✅ | ⚠️ partiel | ✅ | ❌ |
| Interface web | ✅ | ✅ | ❌ (rapport) | ❌ |
| Gestion conteneurs | ❌ | ✅ | ❌ | ❌ |
| Scan vulnérabilités | ❌ | ❌ | ⚠️ partiel | ✅ |
| Multi-hôte | ✅ | ✅ | ❌ | ❌ |
| Setup | 2 min | 5 min | 10 min | 10 min |
**Verdict** : Dockpeek est **le spécialiste de l'audit des ports**. Si vous voulez juste savoir *« qu'est-ce qui est exposé où ? »*, c'est lui. Pour le reste, combinez avec [[app-portainer]] et un scanner de vulnérabilités.
### Propriétaires (ce que Dockpeek remplace)
- **Censys / Shodan** (scans externes payants)
- **Portainer Business** (audit réseau partiel)
- **Aqua Security** (payant)
## 🔐 Sécurité
- ⚠️ **Socket Docker monté** : même en `ro`, le socket reste sensible. Privilégier un accès via [[app-docker-socket-proxy-docker|docker-socket-proxy]] qui filtre l'API
- **Ne pas exposer Dockpeek sur Internet** : l'UI révèle votre topologie réseau. Restreindre à localhost ou VPN ([[app-wireguard|wireguard]] / [[app-tailnet|tailscale]])
- **Activer un reverse-auth** (ex : [[app-authentik|authentik]] ou [[app-authelia|authelia]]) devant l'UI si elle doit être accessible à plusieurs utilisateurs
## 📚 Ressources
- [GitHub dockpeek/dockpeek](https://github.com/dockpeek/dockpeek)
- [Documentation](https://github.com/dockpeek/dockpeek/blob/main/README.md)
## Pages Liées
- [[cat-docker]] — Catégorie Docker
- [[app-portainer]] / [[app-dockge]] / [[app-yacht]] — GUI Docker
- [[app-traefik]] — Reverse-proxy
- [[recettes-docker-compose]] — Compose files
- [[securisation-home-lab]] — Bonnes pratiques