Files
wiki/Catalogue-Self-Hosted/apps/app-dweebui.md
T
2026-06-09 18:40:21 +02:00

140 lines
6.2 KiB
Markdown

---
title: DweebUI
created: 2026-06-07
updated: 2026-06-07
type: app
tags: [catalogue, docker, gui-web, gestion, typescript, auto-hebergement]
confidence: high
contested: false
sources: [https://selfh.st/apps/?tag=Docker, https://github.com/lllllllillllllillll/DweebUI]
---
# 🐳 DweebUI
> **Une GUI web moderne et légère pour piloter vos conteneurs** : DweebUI propose une interface élégante pour start/stop/restart, voir les logs, gérer les images, networks et volumes, le tout en TypeScript / React. Une alternative crédible à [[app-portainer|Portainer]] CE.
## 📋 Informations Générales
| Champ | Valeur |
| :--- | :--- |
| **Site web** | (GitHub) |
| **GitHub** | [lllllllillllllillll/DweebUI](https://github.com/lllllllillllllillll/DweebUI) |
| **License** | MIT |
| **Langage** | TypeScript / React |
| **Étoiles GitHub** | 1058 ⭐ |
| **Dernière MAJ** | 2026-05-18 |
| **Catégorie** | [[cat-docker\|Docker]] |
## 📝 Description
**DweebUI** est une **interface web** de gestion Docker moderne, écrite en TypeScript/React avec un backend Node.js. Elle permet de gérer conteneurs, images, volumes, networks, et stacks Compose, le tout depuis un navigateur. L'UI est plus « Material » que celle de [[app-dockge|Dockge]] et se positionne comme une **alternative plus simple à [[app-portainer|Portainer]]**.
L'idée : proposer une expérience « Docker Desktop-like » mais self-hosted, sans le côté enterprise de Portainer, et avec un focus sur l'usage personnel / homelab.
-**Gestion des conteneurs** : start, stop, restart, kill, pause, unpause, exec shell
-**Logs en temps réel** dans l'UI, avec recherche et téléchargement
-**Inspect** : détails complets (env, mounts, network) en JSON
-**Stacks Compose** : import, edit, deploy un `docker-compose.yml` depuis l'UI
-**Pull / push / remove d'images**, prune automatique
-**Volumes & networks** : visualisation et suppression
-**Multi-utilisateurs** : auth intégrée, rôles admin/user
-**Thèmes** : dark/light mode
-**Stats CPU/RAM** live par conteneur
**DweebUI vs [[app-portainer|Portainer]]** : Portainer est *enterprise-grade* (RBAC, Kubernetes, Edge agents) ; DweebUI est *homedlab-grade* (Docker only, plus simple, plus joli). DweebUI vs [[app-dockge|Dockge]] : Dockge est ultra-minimal (Compose-only) ; DweebUI couvre tout (conteneurs, images, volumes, networks, stacks). DweebUI vs [[app-arcane|Arcane]] : projets très similaires, design comparable, choisir selon l'affinité UI.
## 🚀 Installation
### Docker Compose (recommandé)
```yaml
# docker-compose.yml
version: '3.8'
services:
dweebui:
image: ghcr.io/lllllllillllllillll/dweebui:latest
container_name: dweebui
restart: unless-stopped
ports:
- "8000:8000" # Web UI
volumes:
- /var/run/docker.sock:/var/run/docker.sock:ro # ou :rw si on veut deploy
- dweebui-data:/app/server/db
environment:
- TZ=Europe/Paris
- PORT=8000
labels:
- "traefik.enable=true"
- "traefik.http.routers.dweebui.rule=Host(`dweebui.example.com`)"
- "traefik.http.routers.dweebui.entrypoints=websecure"
- "traefik.http.routers.dweebui.tls.certresolver=letsencrypt"
volumes:
dweebui-data:
```
### Standalone (Node.js)
```bash
git clone https://github.com/lllllllillllllillll/DweebUI.git
cd DweebUI && npm install && npm run build
npm start
```
## ⚙️ Configuration Initiale
1. **Choisir le mode de socket** : `ro` (lecture seule, plus sûr) ou `rw` (deploy depuis l'UI)
2. **Lancer DweebUI** : `docker compose up -d`
3. **Accéder à l'UI** : `http://IP:8000` — créer le compte admin au premier lancement
4. **Vérifier la connexion Docker** : DweebUI liste tous vos conteneurs existants
5. **Tester une action** : sélectionner un conteneur, faire Start/Stop/Restart
6. **Importer un stack Compose** (si mode `rw`) : menu « Stacks » > Upload `docker-compose.yml`
7. **Créer un second utilisateur** si multi-personnes (rôle « user » pour consultation seule)
## 🔄 Alternatives
### Open Source
- [[app-portainer|Portainer]] — référence, plus complet, plus complexe
- [[app-dockge|Dockge]] — ultra-minimaliste, Compose-only
- [[app-yacht|Yacht]] — orienté templates / 1-click deploy
- [[app-arcane|Arcane]] — concurrent direct en Go + Svelte
- [[app-dweebui|DweebUI]] — lui-même
### Comparaison DweebUI vs alternatives
| Critère | DweebUI | Portainer | Dockge | Arcane | Yacht |
| :--- | :--- | :--- | :--- | :--- | :--- |
| Setup | 3 min | 5 min | 2 min | 3 min | 5 min |
| UI design | Moderne | Classique | Minimal | Moderne | Rétro |
| Compose | ✅ | ✅ | ✅ (natif) | ✅ | ✅ |
| Multi-user | ✅ | ✅ (RBAC) | ❌ | ⚠️ | ❌ |
| K8s | ❌ | ✅ | ❌ | ❌ | ❌ |
| Templates | ❌ | ✅ | ❌ | ❌ | ✅ (fort) |
| RAM idle | ~150 Mo | ~200 Mo | ~50 Mo | ~100 Mo | ~150 Mo |
**Verdict** : DweebUI est **un excellent choix moderne** pour un homelab qui veut une GUI complète sans la complexité de Portainer. Si vous aimez le « look & feel » Material, vous serez conquis.
### Propriétaires (ce que DweebUI remplace)
- **Docker Desktop** (propriétaire, lourd, requiert une licence entreprise pour les grandes orgos)
- **Portainer Business** (payant pour certaines features)
- **Synology Container Manager** (propriétaire, lié à DSM)
## 🔐 Sécurité
- ⚠️ **Socket Docker** : `ro` est fortement recommandé pour un usage personnel ; `rw` est requis si on veut déployer depuis l'UI
- **Auth forte** : DweebUI supporte l'auth locale + peut être mis derrière [[app-authelia|authelia]] / [[app-authentik|authentik]] pour du SSO
- **Exposer sur Internet** : **déconseillé** même avec auth — préférer un VPN ([[app-wireguard|wireguard]], [[app-tailnet|tailscale]])
- **Mises à jour** : garder DweebUI à jour ; c'est un composant d'administration sensible
## 📚 Ressources
- [GitHub llllllllillllllillll/DweebUI](https://github.com/lllllllillllllillll/DweebUI)
- [Démo / screenshots](https://github.com/lllllllillllllillll/DweebUI#screenshots)
## 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