docs: clarifie le déploiement Docker (host vs bridge)

- README racine : section Docker réécrite avec distinction Linux
  natif (host mode, découverte LAN active) vs macOS/Windows/Docker
  Desktop (override bridge, découverte désactivée). Mention de la
  contrainte Compose v2.24+.
- docker/README.md : pré-requis précisés, limitation Docker Desktop
  documentée explicitement.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
2026-05-15 14:33:24 +02:00
parent 0685fcd2c5
commit c1519bff2e
2 changed files with 47 additions and 9 deletions

View File

@@ -51,16 +51,54 @@ npm run db:migrate
## Déploiement Docker
```bash
# Avec SQLite (simple, fichier local persisté dans un volume)
docker compose --profile sqlite -f docker/docker-compose.yml up -d
> Détails complets dans [`docker/README.md`](./docker/README.md).
# Avec PostgreSQL
docker compose --profile postgres -f docker/docker-compose.yml up -d
### Pré-requis
- Docker Engine ≥ 24 + Docker Compose v2.24+ (`!reset` requis pour l'override bridge)
- Linux natif **recommandé en production** (seul environnement où la découverte LAN fonctionne pleinement)
### Configuration
```bash
cp .env.docker.example .env
# Édite .env pour ajuster DISCOVERY_DEFAULT_CIDRS à ton LAN (ex: 192.168.1.0/24)
```
> Le conteneur utilise `network_mode: host` pour permettre les scans ARP / mDNS /
> ping sur le LAN. À désactiver si non nécessaire.
### Linux natif (production homelab — recommandé)
Mode `host` activé : la découverte ARP / mDNS / ping sweep voit l'ensemble du LAN.
```bash
# SQLite (autonome)
docker compose -f docker/docker-compose.yml --profile sqlite up -d --build
# OU PostgreSQL
docker compose -f docker/docker-compose.yml --profile postgres up -d --build
```
UI : `http://<ip-de-la-machine>:3000`
### macOS / Windows / Docker Desktop (dev local uniquement)
`network_mode: host` ne fonctionne pas dans la VM Docker Desktop : on ajoute l'override bridge qui mappe explicitement `3000:3000`. ⚠️ La découverte LAN (ARP / mDNS / ping) sera **désactivée** — seule la saisie manuelle reste fonctionnelle.
```bash
docker compose \
-f docker/docker-compose.yml \
-f docker/docker-compose.bridge.yml \
--profile sqlite up -d --build
```
UI : <http://localhost:3000>
### Commandes utiles
```bash
docker compose -f docker/docker-compose.yml logs -f ipam # logs
docker compose -f docker/docker-compose.yml down # stop
docker compose -f docker/docker-compose.yml down -v # stop + suppression données
```
## Découverte réseau