# NetBox Docker Image avec Plugins Image Docker NetBox personnalisée avec plugins pré-installés, construite automatiquement via Gitea Actions. ## Plugins inclus Par défaut, les plugins suivants sont installés : | Plugin | Description | Activé | |--------|-------------|--------| | `netbox-branching` | Branching et change management (NetBox Labs) | ✅ | | `netbox-bgp` | Gestion des sessions BGP, peers, communities | ✅ | | `netbox-secrets` | Gestion sécurisée des secrets et mots de passe | ✅ | | `netbox-topology-views` | Visualisation de topologie réseau | ✅ | | `netbox-documents` | Gestion de documents attachés | ❌ | | `netbox-acls` | Gestion des Access Control Lists | ❌ | | `netbox-qrcode` | Génération de QR codes pour les équipements | ❌ | | `netbox-proxbox` | Intégration avec Proxmox VE | ❌ | ## Utilisation ### Pull depuis le registry ```bash docker pull gitea.arnodo.fr/damien/netbox:latest ``` ### Avec Docker Compose Créer un `docker-compose.override.yml` pour utiliser l'image personnalisée : ```yaml services: netbox: image: gitea.arnodo.fr/damien/netbox:latest pull_policy: always netbox-worker: image: gitea.arnodo.fr/damien/netbox:latest pull_policy: always netbox-housekeeping: image: gitea.arnodo.fr/damien/netbox:latest pull_policy: always ``` ## Personnalisation des plugins ### Ajouter un plugin 1. Éditer `plugin_requirements.txt` et ajouter le package PyPI 2. Éditer `plugins.py` et ajouter le plugin à la liste `PLUGINS` 3. Configurer le plugin dans `PLUGINS_CONFIG` si nécessaire 4. Commit et push - l'image sera rebuild automatiquement ### Exemple : Activer netbox-proxbox ```python # plugin_requirements.txt netbox-proxbox # plugins.py PLUGINS = [ "netbox_branching", "netbox_bgp", "netbox_secrets", "netbox_topology_views", "netbox_proxbox", # Ajouter ici ] PLUGINS_CONFIG = { # ... "netbox_proxbox": { "proxmox": [ { "domain": "proxmox.home.arpa", "http_port": 8006, "user": "netbox@pve", "password": "your-api-token", "ssl": True, "node": "pve", } ], }, } ``` ## Build arguments | Argument | Description | Défaut | |----------|-------------|--------| | `NETBOX_VERSION` | Version de l'image NetBox de base | `latest` | ### Builder une version spécifique ```bash docker build --build-arg NETBOX_VERSION=v4.1.0 -t netbox:v4.1.0-plugins . ``` ## Structure des fichiers ``` images/netbox/ ├── Dockerfile # Image principale ├── plugin_requirements.txt # Liste des plugins PyPI ├── plugins.py # Configuration des plugins └── README.md # Cette documentation ``` ## Plugins - Liens et documentation - **netbox-branching** : https://github.com/netboxlabs/netbox-branching - Permet de créer des branches pour tester des changements avant de les appliquer - Idéal pour le change management et les workflows de validation - **netbox-bgp** : https://github.com/netbox-community/netbox-bgp - Gestion complète BGP : sessions, peers, communities, prefix-lists - Parfait pour documenter ton infrastructure réseau Arista ## Notes - L'image utilise `uv pip` pour l'installation des plugins (méthode officielle NetBox Docker) - Les assets statiques sont collectés au build pour les plugins qui en ont - Compatible avec NetBox >= 4.0 (netbox-branching requiert NetBox 4.0+)