7.2 KiB
title: Nginx UI created: 2026-06-06 updated: 2026-06-06 type: app tags: [catalogue, reverse-proxy, nginx, gui, web, go, vue, auto-hebergement] confidence: high contested: false sources: [https://selfh.st/apps/?tag=Reverse+Proxy, https://github.com/0xJacky/nginx-ui]
🖥️ Nginx UI
Interface web pour gérer Nginx sans toucher aux fichiers de conf : édition de vhosts, monitoring serveur, Let's Encrypt intégré, terminal web, support cluster. Le pendant moderne et plus complet de Nginx Proxy Manager, mais pour utilisateurs qui veulent rester sur du Nginx pur.
📋 Informations Générales
| Champ | Valeur |
|---|---|
| Site web | nginxui.com |
| GitHub | 0xJacky/nginx-ui |
| License | AGPL-3.0 |
| Langage | Go, Vue, TypeScript |
| Étoiles GitHub | 11.2k ⭐ |
| Dernière MAJ | 2026-06-04 |
| Catégorie | [[cat-reverse-proxy |
📝 Description
Nginx UI est une GUI web complète pour administrer Nginx. Au lieu d'éditer nginx.conf à la main, vous avez une interface moderne qui fait tout : édition de blocs, monitoring, backups auto, Let's Encrypt, terminal web, et même un assistant IA (ChatGPT / Deepseek).
Caractéristiques :
- ✅ Éditeur visuel de configs :
NgxConfigEditormaison, colorisation syntaxique, autocomplete - ✅ Monitoring serveur : CPU, RAM, load average, disque en temps réel
- ✅ Let's Encrypt en 1 clic : intégration Caddy-like, renouvellement automatique
- ✅ Backup automatique des configs avec versioning et restauration
- ✅ Cluster management : pousser une config sur plusieurs nodes Nginx d'un coup
- ✅ Terminal web : accès shell depuis l'UI
- ✅ Log viewer : logs Nginx en streaming
- ✅ ChatGPT / Deepseek intégré : assistant IA pour aider à écrire/optimiser les configs
- ✅ MCP (Model Context Protocol) : permet à des agents IA d'interagir avec Nginx UI
- ✅ Multi-plateforme : Linux, macOS, Windows, ARM, OpenWrt, FreeBSD
- ✅ Single binary (hors Docker) : pas de dépendances système
Positionnement : c'est l'alternative moderne à Nginx Proxy Manager. Comparaison rapide :
- Nginx UI : éditeur de conf en texte, plus technique, plus de fonctionnalités, IA, cluster
- Nginx Proxy Manager : formulaires web, plus grand public, plus simple pour les débutants, SSL facile
Public cible : admins qui veulent la puissance de Nginx (configs custom) avec la commodité d'une GUI et qui n'ont pas peur de voir la conf sous-jacente.
⚠️ AGPL-3.0 : c'est une licence copyleft forte. Pour un usage personnel/self-hosted c'est OK, mais en entreprise il faut évaluer l'impact (toute modification doit être publiée).
🚀 Installation
Option 1 : Docker Compose (recommandé)
# docker-compose.yml
version: '3.8'
services:
nginx-ui:
image: uozi/nginx-ui:latest
container_name: nginx-ui
restart: unless-stopped
environment:
- TZ=Europe/Paris
volumes:
- ./nginx:/etc/nginx # Configs Nginx
- ./nginx-ui:/etc/nginx-ui # Données Nginx UI
- /var/www:/var/www # Sites statiques (optionnel)
- /var/run/docker.sock:/var/run/docker.sock # Optionnel : voir les conteneurs
ports:
- "8080:80" # Port UI par défaut
- "8443:443" # HTTPS optionnel
networks:
- proxy
networks:
proxy:
name: proxy
⚠️ Au premier lancement, le dossier
./nginxdoit être vide ou contenir uniquement les configs par défaut. Nginx UI va le prendre en main.
Variante Traefik (reverse proxy devant Nginx UI)
# docker-compose.yml
version: '3.8'
services:
traefik:
# ... votre Traefik habituel
nginx-ui:
image: uozi/nginx-ui:latest
restart: unless-stopped
environment:
- TZ=Europe/Paris
volumes:
- ./nginx:/etc/nginx
- ./nginx-ui:/etc/nginx-ui
- /var/run/docker.sock:/var/run/docker.sock
networks: [proxy]
labels:
- "traefik.enable=true"
- "traefik.http.routers.nginx-ui.rule=Host(`nginx.example.com`)"
- "traefik.http.routers.nginx-ui.entrypoints=websecure"
- "traefik.http.routers.nginx-ui.tls.certresolver=letsencrypt"
- "traefik.http.services.nginx-ui.loadbalancer.server.port=80"
Option 2 : Binaire natif (Linux)
# Install/upgrade
bash -c "$(curl -L https://cloud.nginxui.com/install.sh)" @ install
# Démarrer
nginx-ui -config app.ini
# Port par défaut : 9000
# HTTP Challenge port : 9180 (pour Let's Encrypt)
⚙️ Configuration Initiale
- Accéder à l'UI :
http://IP_DU_SERVEUR:8080/install - Créer le compte admin (premier démarrage uniquement)
- Explorer les sections :
- Dashboard : monitoring serveur en temps réel
- Configs :
nginx.conf, sites-available, sites-enabled - Sites : éditeur visuel par site
- SSL : certificats Let's Encrypt
- Logs : streaming des logs Nginx
- Terminal : shell web (attention sécurité !)
- Activer Let's Encrypt : onglet SSL → New Certificate → entrer le domaine
- Backup : configurer la fréquence dans Settings → Backup
- Cluster (avancé) : ajouter d'autres nodes Nginx pour push de config distant
💡 Convention de fichiers : Nginx UI suit le standard Debian :
sites-available/avec symlinks danssites-enabled/. Pour les autres distros, ajusternginx.confpour inclure ces dossiers.
🔄 Alternatives
Open Source
- app-nginx-proxy-manager — Concurrent direct, plus simple, formulaires web
- app-caddy — Reverse proxy, pas de GUI mais Caddyfile très simple
- app-traefik — Reverse proxy moderne, dashboard mais orienté Docker
- NginxProxyManager (même projet, alias)
- Ajenti — GUI sysadmin généraliste (supporte Nginx)
Propriétaires
- Cloudflare (CDN + reverse proxy managé)
- Caddy Studio (non-officiel)
- RunCloud / Ploi.io — serveurs web managés avec UI (Nginx + PHP)
🔐 Sécurité
- 2FA / TOTP : recommandé, supporté nativement
- HTTPS optionnel : auto-signé par défaut, mettre un vrai cert
- Terminal web : désactivable, expose un shell (gros risque si exposé sans auth)
- Cluster auth : tokens dédiés pour les nodes distants
- Pas d'auth par défaut sur le port 80 : toujours mettre derrière un reverse proxy + auth si exposé sur Internet
- Logs d'audit : toutes les actions admin loggées
⚠️ Recommandation : ne jamais exposer Nginx UI directement sur Internet. Toujours le mettre derrière Traefik/Caddy avec auth (Cloudflare Access, Authelia, Basic Auth).
📚 Ressources
- Documentation officielle
- Démo en ligne —
admin/admin - GitHub Releases
- Weblate (traductions)
Pages Liées
- cat-reverse-proxy — Catégorie Reverse Proxy
- app-nginx-proxy-manager — Concurrent direct
- app-caddy — Alternative plus simple
- app-traefik — Combinable en frontal
- comparatif-reverse-proxy — Comparaison détaillée