-
-
Notifications
You must be signed in to change notification settings - Fork 2
Home
Related article — Overview and illustrated walkthrough (with UI screenshots) on the blog: Gluetun Companion: web interface to automatically pilot your WireGuard and OpenVPN VPN servers in Gluetun (in French).
Using it? Liking it? ⭐ Drop a star! — takes two seconds.
Want the shortest path? Check compatibility, go directly to the quick start, then return to features and detailed operation as needed. Project maintenance is covered under automated workflows and security.
Gluetun Companion is a Web UI for automatically managing WireGuard and OpenVPN servers inside Gluetun:
- It benchmarks your VPN servers from inside the tunnel itself, using sidecar mode without restarting your main Gluetun, or Gluetun’s HTTP proxy
- Each server is evaluated using speed, latency, jitter, packet loss, DNS latency, history and real-world stability
- The best server can be selected automatically according to your usage profile: balanced, gaming, BitTorrent, DDL, download or streaming
- Rotation pools also let you switch servers without a full benchmark, using random, round-robin or best historical download selection
- VPN profiles support multiple providers, protocols and custom configurations, with encrypted secrets and WireGuard/OpenVPN support
- The Gluetun catalogue, AirVPN picker, new-server detection and overloaded-server filtering make daily maintenance easier
- Companion manages Docker containers attached to Gluetun: recreation after switches, pause during benchmarks and optional image updates
- It can check BitTorrent trackers, handle VPN port forwarding and synchronize ports with qBittorrent or rTorrent
- History, hourly patterns, Discord/Apprise notifications, REST API, Prometheus metrics and Grafana support turn it into a full homelab VPN control panel
Status: beta. Gluetun Companion is still in testing. It is developed and battle-tested primarily with AirVPN; other providers have barely been tested in real conditions, even though the mechanics (catalogue, benchmark, switching, container management) are strictly identical for all of them. Your feedback is invaluable.
Current validation status:
- 100% functional with AirVPN over WireGuard;
- tested over WireGuard with a few other providers;
- feedback needed for OpenVPN providers;
- ProtonVPN WireGuard + NAT-PMP port forwarding supported through VPN profiles; real-world qBittorrent synchronization feedback is still useful;
- feedback needed for Custom WireGuard and Custom OpenVPN servers.
AI-assisted development: approximately 70% of the code was produced with the assistance of Claude Code and Codex, under human direction and validation. Particular attention is paid to security: secret encryption and protection, automated workflows, Dependabot and Trivy, restricted Docker socket access through docker-socket-proxy, automated tests, and change review. This transparency does not replace real-world feedback, which remains especially important during beta testing.
Issues and pull requests are welcome, with proper form: for an issue, please include the version, VPN provider, relevant logs and reproduction steps; for a PR, a clear description of the problem solved and the expected behaviour.
Repository · Issues · Releases
Français
- Compatibilité
- Démarrage rapide
-
Fonctionnalités
- Mesure de performances
- Résolveurs DNS observés
- Sélection & bascule automatique
- Pools de rotation
- Multi-provider (WireGuard & OpenVPN)
- Catalogue de serveurs Gluetun
- Gestion des containers Docker
- Contrôle trackers BitTorrent
- AirVPN
- Analyse & historique
- Interface & notifications
- Intégration & infrastructure
- Variables d'environnement
-
Fonctionnement
- Mode Sidecar (défaut)
- Mode Proxy HTTP (optionnel)
- Containers à redémarrer après bascule
- Containers à stopper pendant le benchmark
- Contrôle des trackers BitTorrent via le VPN
- Clients BitTorrent et découverte des trackers
- Inventaire des ports forwardés VPN
- Bandeau « Test en cours » et bouton Arrêter
- Sélecteur de serveurs AirVPN
- Vérification rapide avant benchmark (option)
- Optimisation horaire (option)
- Sélection intelligente du benchmark (recommandée pour les gros catalogues)
- Serveurs autorisés avant benchmark (option)
- Éviter les serveurs AirVPN chargés (option, dédié AirVPN)
- Écoute Docker events
- Score de confiance par serveur
- Profils d'usage
- Profils VPN (WireGuard & OpenVPN)
- Pools de rotation
- Score de sélection — composantes de stabilité
- Vue patterns horaires (/history/patterns)
- Détection de nouveaux serveurs AirVPN
- Notifications contextuelles
- Jitter & Packet Loss
- Endpoint Prometheus /metrics
- REST API
- Cycle automatique vs déclenchement manuel
- Dashboard Grafana
- Workflows automatisés
- Notes
- Sécurité
- Crédits
- Licence
English
- Compatibility
- Quick start
- Features
- Environment variables
-
How it works
- Sidecar mode (default)
- HTTP proxy mode (optional)
- Containers to restart after switch
- Containers to pause during benchmark
- BitTorrent tracker checks through the VPN
- BitTorrent clients and tracker discovery
- VPN forwarded port inventory
- "Test running" banner and Stop button
- AirVPN server picker
- Quick check before benchmark (option)
- Time optimization (option)
- Smart benchmark selection (recommended for large catalogues)
- Allowed servers before benchmark (option)
- Avoid loaded AirVPN servers (option, dedicated to AirVPN)
- Docker events listener
- Per-server confidence score
- Usage profiles
- VPN profiles (WireGuard & OpenVPN)
- Rotation pools
- Selection score — stability components
- Hourly patterns view (/history/patterns)
- New AirVPN server detection
- Contextual notifications
- Jitter & Packet Loss
- Prometheus /metrics Endpoint
- REST API
- Automatic cycle vs manual trigger
- Grafana dashboard
- Automated workflows
- Notes
- Security
- Credits
- License