Débutant 12 minInterfaces

Open WebUI avec Ollama : guide complet

Ollama tourne dans votre terminal, c'est efficace mais pas confortable au quotidien. Ce tutoriel Open WebUI + Ollama installe en quelques minutes une interface chat complète, locale, qui ressemble à ChatGPT : historique persistant, markdown, pièces jointes, RAG intégré sur vos documents et gestion multi-comptes. Le tout dans un conteneur Docker, sans dépendances système.

Par Mohamed Meguedmi·Màj 2026-05-12·Testé sur Windows, macOS, Linux

#Pourquoi Open WebUI

Open WebUI (anciennement Ollama WebUI) est devenu le frontend de référence pour les LLM auto-hébergés. C'est une application web open source (licence permissive) qui parle nativement à Ollama, mais aussi à n'importe quel endpoint compatible OpenAI — LM Studio, vLLM, llama.cpp server, ou même une clé OpenAI si vous en avez une.

Interface familière
Sidebar avec historique, zone de chat centrale, sélecteur de modèle en haut. Quiconque a déjà ouvert ChatGPT se repère en 30 secondes.
RAG intégré
Glissez un PDF, un .docx, un .md ou un .txt dans la conversation : Open WebUI le chunke, l'embedde et l'utilise comme contexte. Pas de stack RAG à monter à la main.
Multi-utilisateurs natif
Comptes locaux, rôles admin/user/pending, validation manuelle des inscriptions. Parfait pour une équipe ou une famille.
100 % offline une fois installé
Le conteneur, l'UI et les modèles tournent sur votre machine. Aucune télémétrie obligatoire, aucun appel sortant si vous bloquez OpenAI/HuggingFace dans les réglages.
Extensible
Pipelines Python (fonctions, filtres, RAG custom), outils MCP, intégration recherche web (SearXNG, Tavily), TTS/STT, génération d'images via ComfyUI ou Automatic1111.
i
Open WebUI ≠ Ollama
Ollama est le moteur d'inférence (le daemon qui charge le modèle et génère les tokens). Open WebUI est l'interface qui parle à Ollama via son API HTTP. Vous pouvez avoir Ollama sans Open WebUI, l'inverse est plus compliqué — Open WebUI a besoin d'un backend qui serve les modèles.

#Prérequis

Ollama installé et fonctionnel
Le daemon doit écouter sur http://localhost:11434. Vérifiez avec curl http://localhost:11434/api/tags — vous devez obtenir un JSON (vide ou avec vos modèles).
Docker Desktop ou Docker Engine
Windows/macOS : Docker Desktop. Linux : docker-ce via le gestionnaire de paquets de votre distro. Compose v2 est inclus.
2 Go de RAM libre
Open WebUI lui-même consomme peu (200-400 Mo). Le gros de la RAM/VRAM sera pris par Ollama qui charge les modèles.
Un modèle Ollama déjà tiré
Si la liste est vide, ollama pull mistral ou ollama pull llama3.2 avant de commencer — sinon il n'y aura rien à sélectionner dans l'UI.
Pas encore Ollama ?
Si Ollama n'est pas installé, commencez par le guide d'installation correspondant à votre OS. Le tutoriel Windows/macOS/Linux d'Ollama prend 3 minutes. Revenez ici ensuite.

#1. Installation Docker en une commande

L'image officielle est publiée sur GitHub Container Registry. Une seule commande suffit pour démarrer Open WebUI et le connecter automatiquement à votre Ollama local.

Linux / macOS — Ollama local
docker run -d \
  -p 3000:8080 \
  --add-host=host.docker.internal:host-gateway \
  -v open-webui:/app/backend/data \
  --name open-webui \
  --restart always \
  ghcr.io/open-webui/open-webui:main
Windows PowerShell
docker run -d `
  -p 3000:8080 `
  --add-host=host.docker.internal:host-gateway `
  -v open-webui:/app/backend/data `
  --name open-webui `
  --restart always `
  ghcr.io/open-webui/open-webui:main

Décortiquons les flags. Chacun sert à quelque chose de précis :

-p 3000:8080
Open WebUI écoute sur le port 8080 dans le conteneur. On le publie sur le port 3000 de votre machine. Vous y accéderez via http://localhost:3000.
--add-host=host.docker.internal:host-gateway
Indispensable sur Linux : permet au conteneur de joindre Ollama qui tourne en dehors de Docker via le hostname host.docker.internal. Sur Windows/macOS, Docker Desktop le configure déjà.
-v open-webui:/app/backend/data
Volume nommé qui persiste l'historique des conversations, les comptes utilisateurs, les documents indexés. Sans ça, tout disparaît au redémarrage du conteneur.
--restart always
Le conteneur redémarre automatiquement au boot de la machine. Open WebUI devient un service permanent.
ghcr.io/open-webui/open-webui:main
Tag main = dernière version stable. Pour figer une version, utilisez :v0.5.0 (ou la release du moment). En production, ne dépendez pas de main.
!
Première image : ~1.5 Go
Le premier docker run télécharge l'image complète. Comptez plusieurs minutes selon votre connexion. Les démarrages suivants seront instantanés.

#2. Première connexion et compte admin

Une fois le conteneur démarré, ouvrez votre navigateur sur l'URL ci-dessous.

Interface locale
http://localhost:3000
  1. 01
    Création du compte admin
    Au premier lancement, Open WebUI vous demande de créer un compte. Le tout premier utilisateur enregistré devient automatiquement administrateur. Email, mot de passe — tout reste local, dans le volume Docker.
  2. 02
    Vérifiez les modèles disponibles
    Dans le sélecteur en haut de l'écran, vos modèles Ollama doivent apparaître. Si la liste est vide, c'est que la connexion à Ollama échoue (voir section 3 ci-dessous).
  3. 03
    Lancez une conversation test
    Sélectionnez un modèle, tapez un message. Si la réponse arrive en streaming, tout est branché. Sinon, ouvrez les Settings > Admin Panel > Connections pour diagnostiquer.
Notez bien le mot de passe admin
Il n'y a pas de procédure de récupération graphique. Si vous le perdez, il faut soit éditer la base SQLite dans le volume Docker, soit tout détruire et recommencer. Stockez-le dans votre password manager.

#3. Connecter Open WebUI à Ollama

Dans 95 % des cas, la connexion se fait toute seule grâce à host.docker.internal. Si ce n'est pas le cas, voici comment la forcer manuellement.

Allez dans Settings (icône en bas à gauche) > Admin Panel > Connections > Ollama API. Saisissez l'URL :

URL Ollama depuis le conteneur
http://host.docker.internal:11434

Cliquez sur le bouton de test (icône rafraîchir à côté du champ). Un voyant vert confirme la connexion. La liste de vos modèles est rechargée immédiatement.

!
Linux : Ollama doit écouter sur 0.0.0.0
Par défaut sur Linux, le daemon Ollama n'écoute que sur 127.0.0.1, ce qui le rend invisible depuis Docker. Éditez le service systemd (sudo systemctl edit ollama) et ajoutez Environment="OLLAMA_HOST=0.0.0.0:11434" dans [Service]. Puis sudo systemctl restart ollama. Pensez à vos règles firewall si la machine est exposée.

Pour vérifier en CLI que Ollama est bien joignable depuis l'extérieur du conteneur :

Test de connectivité
# Depuis l'hôte
curl http://localhost:11434/api/tags

# Depuis le conteneur Open WebUI (Linux)
docker exec -it open-webui curl http://host.docker.internal:11434/api/tags

#4. RAG sur vos documents en 2 minutes

C'est probablement la fonctionnalité qui justifie à elle seule l'installation. Open WebUI embarque un pipeline RAG complet : extraction de texte (PDF, DOCX, MD, TXT, HTML, code source), chunking, embeddings, recherche vectorielle, injection dans le contexte.

#Méthode 1 : pièce jointe à la volée

Dans une conversation, cliquez sur le trombone (ou tapez # pour parcourir les documents indexés). Sélectionnez un fichier — il est ingéré, chunké, embeddé en quelques secondes. Le modèle peut désormais répondre à des questions sur son contenu.

i
Modèle d'embeddings par défaut
Open WebUI utilise sentence-transformers/all-MiniLM-L6-v2 par défaut. C'est rapide mais anglo-centré. Pour du contenu français, basculez vers BAAI/bge-m3 ou intfloat/multilingual-e5-large dans Settings > Documents > Embedding Model. Premier téléchargement ~1-2 Go.

#Méthode 2 : Knowledge (base persistante)

Pour un usage récurrent — documentation interne, base de connaissances, archives projet — créez une Knowledge. Workspace > Knowledge > Create Knowledge. Donnez-lui un nom (ex. "Doc produit"), uploadez en masse vos documents, et associez-la à un modèle personnalisé via Workspace > Models.

Chunking par défaut
1000 caractères avec overlap de 100. Ajustable dans Settings > Documents. Pour du texte technique dense, descendez à 500/50. Pour du narratif, restez sur 1500/200.
Top K
Nombre de chunks remontés au modèle. Défaut 4. Augmentez à 6-8 pour des questions transversales, redescendez à 2-3 si le modèle s'éparpille.
Recherche hybride
Activable dans la même page. Combine BM25 lexical et similarité vectorielle. Indispensable pour les requêtes contenant des termes techniques exacts (références produit, noms propres, codes).
Choisir un modèle adapté au RAG
Le contexte injecté peut peser 2 à 8k tokens. Un Mistral 7B avec sa fenêtre de 8k tokens sature vite. Pour du RAG sérieux, préférez Qwen 2.5 7B (32k de contexte), Llama 3.1 8B (128k) ou Phi-4 14B Q4 si vous avez la VRAM (≈9 Go).

#5. Multi-utilisateurs et authentification

Open WebUI gère trois rôles : admin (tout), user (chat + ses propres knowledges), pending (compte créé mais en attente de validation). Le système est conçu pour qu'un admin contrôle qui rejoint l'instance.

  1. 01
    Activer l'inscription contrôlée
    Admin Panel > Settings > General. Définissez Default User Role sur 'pending'. Toute nouvelle inscription nécessitera votre validation manuelle dans Admin Panel > Users.
  2. 02
    Créer des utilisateurs
    Vos collègues vont sur http://votre-ip:3000, créent un compte. Vous voyez la demande dans Admin Panel > Users, vous validez d'un clic. Ils peuvent alors se connecter.
  3. 03
    Restreindre les modèles par utilisateur
    Workspace > Models > sélectionnez un modèle > Visibility. Vous pouvez rendre un modèle public, privé, ou ne l'exposer qu'à certains utilisateurs (utile pour un modèle fine-tuné sensible).
  4. 04
    Forcer HTTPS si l'instance est exposée
    Open WebUI ne gère pas TLS lui-même. Placez Caddy, Traefik ou nginx devant le conteneur. Sans HTTPS, ne l'ouvrez pas en dehors de votre LAN — les mots de passe transitent en clair.
!
OAuth / LDAP : possible mais avancé
Open WebUI supporte les providers OAuth (Google, Microsoft, GitHub) et le LDAP via des variables d'environnement (OAUTH_*, LDAP_*). C'est utile en entreprise mais demande une bonne maîtrise. Pour un usage perso ou petite équipe, les comptes locaux suffisent largement.

#Open WebUI vs Msty vs LobeChat

Trois interfaces matures se partagent le marché en 2026. Voici comment les départager selon votre profil.

Open WebUI
Le plus complet et le plus extensible. RAG, pipelines Python, multi-users, MCP, web search. Demande Docker. Idéal si vous voulez UNE interface pour toute une équipe.
Msty
App desktop native (Win/Mac/Linux), zéro Docker, installation en 1 clic. Excellente UX pour un usage solo. RAG intégré aussi. Moins extensible qu'Open WebUI. Idéal pour un développeur ou un curieux qui veut tester rapidement.
LobeChat
Plus orienté "clone ChatGPT visuel". Joli, plugins, marketplace d'agents. Multi-providers très bien fait. RAG moins poussé. Idéal si vous jonglez entre Ollama local et plusieurs APIs (OpenAI, Anthropic, Mistral cloud).
Verdict rapide
Solo + machine perso : Msty. Équipe + serveur dédié : Open WebUI. Power user qui veut un beau frontend multi-provider : LobeChat.

#Dépannage

Liste de modèles vide
Open WebUI ne joint pas Ollama. Vérifiez : (1) ollama list montre bien des modèles, (2) curl http://localhost:11434/api/tags répond, (3) sur Linux, OLLAMA_HOST=0.0.0.0:11434 est bien défini. Testez l'URL dans Admin Panel > Connections.
Erreur 502 Bad Gateway
Le conteneur démarre mal. docker logs open-webui montre la cause. Souvent : volume monté en lecture seule, port 3000 déjà occupé, ou conflit avec une instance précédente (docker rm -f open-webui puis relancer).
Tokens/sec lents
Le goulot est dans Ollama, pas Open WebUI. ollama ps doit montrer 100 % GPU. Si c'est CPU ou partiel, le modèle déborde de la VRAM — passez à une quantization plus petite (Q4_K_M plutôt que Q5_K_M).
Documents pas indexés
Premier upload télécharge le modèle d'embeddings (1-2 Go), ça peut prendre du temps. Regardez docker logs open-webui. Vérifiez aussi que le fichier n'excède pas la taille max (réglable dans Settings > Documents > Max Upload File Size).
Mise à jour
docker pull ghcr.io/open-webui/open-webui:main puis docker stop open-webui && docker rm open-webui et relancez la commande run d'origine. Le volume open-webui:/app/backend/data préserve vos données.
Sauvegarde
docker run --rm -v open-webui:/data -v $(pwd):/backup alpine tar czf /backup/openwebui-backup.tar.gz -C /data . crée une archive de tout votre historique, comptes, knowledges. À faire avant chaque update majeure.

#Pour aller plus loin

Avec Open WebUI installé et branché à Ollama, vous avez un poste de travail IA local complet. Quelques prolongements naturels :

Améliorer le RAG
Le RAG intégré d'Open WebUI est très correct, mais pour de gros corpus ou des recherches plus pointues, le guide RAG ChromaDB du site montre comment monter un pipeline dédié, plus performant et plus tunable.
Choisir la bonne quantification
Q4_K_M par défaut, mais selon votre VRAM le compromis n'est pas le même. Le guide quantification Q4/Q5/Q8 détaille les ordres de grandeur — souvent décisif pour faire tourner un 14B ou rester à un 7B.
Comparer aux autres frontends
Si vous hésitez encore entre Open WebUI, LibreChat, AnythingLLM, SillyTavern, le guide comparatif des frontends de chat liste leurs forces respectives en une page.
Ce guide vous a aidé ?

Un retour, une erreur, une précision ? Faites-nous signe, ça améliore le guide pour tout le monde.