Intermédiaire ⏱ 15 min de mise en œuvre Mis à jour le 11 août 2026

Héberger Open WebUI, une interface ChatGPT pour Ollama

Ollama en ligne de commande, ça va deux minutes. Open WebUI ajoute une vraie interface de chat web (type ChatGPT) devant votre LLM local, avec comptes et documents. Voici comment le déployer.

Ollama fournit une API efficace pour exécuter un LLM localement, mais son utilisation en ligne de commande devient vite limitée dès que plusieurs personnes doivent accéder au modèle. Open WebUI ajoute une interface web inspirée de ChatGPT, avec conversations persistantes, comptes utilisateurs, sélection des modèles et traitement de documents.

L’ensemble constitue une alternative auto-hébergée à ChatGPT : Ollama exécute le modèle, tandis qu’Open WebUI gère l’expérience utilisateur. Les requêtes peuvent rester sur votre infrastructure, à condition de ne pas activer de fournisseurs ou services externes. Vous gardez ainsi la maîtrise des comptes, des historiques et des documents transmis au LLM.

Ce guide prolonge notre tutoriel pour héberger un LLM avec Ollama. Nous supposons qu’Ollama est déjà installé et qu’au moins un modèle a été téléchargé.

Prérequis pour installer Open WebUI

Avant de commencer, vérifiez les éléments suivants :

  • une instance Ollama fonctionnelle avec son API accessible sur le port 11434
  • au moins un modèle installé, vérifiable avec ollama list
  • Docker installé et démarré
  • un nom de domaine ou sous-domaine, par exemple chat.exemple.fr
  • un reverse proxy comme Caddy, Nginx ou Traefik pour activer HTTPS
  • un pare-feu limitant l’accès aux ports internes

Open WebUI n’accélère pas l’inférence. Ses performances dépendent principalement du serveur Ollama, du modèle chargé et des ressources disponibles. Sur CPU, privilégiez de petits modèles quantifiés et attendez-vous à une génération plus lente. L’ajout de plusieurs utilisateurs peut également augmenter la mémoire consommée et le nombre de requêtes simultanées.

Les futurs VPS TalCloud pourront accueillir ce type de déploiement lorsqu’ils seront disponibles. Aucun prix ni support GPU n’est annoncé à ce stade. L’intérêt d’une infrastructure hébergée en France réside notamment dans la localisation des serveurs, la maîtrise des données, le stockage NVMe, la protection Anti-DDoS Netrix et l’accès à un support humain.

Installer Open WebUI avec Docker

L’image officielle est publiée sur GitHub Container Registry sous le nom ghcr.io/open-webui/open-webui. Le conteneur écoute sur le port 8080, que nous allons rendre disponible sur le port 3000 de l’hôte.

Si Ollama fonctionne déjà dans un conteneur nommé ollama, placez les deux services sur le même réseau Docker :

docker network create llm
docker network connect llm ollama

Lancez ensuite Open WebUI :

docker run -d \
  --name open-webui \
  --network llm \
  --restart unless-stopped \
  -p 127.0.0.1:3000:8080 \
  -e OLLAMA_BASE_URL=http://ollama:11434 \
  -v open-webui:/app/backend/data \
  ghcr.io/open-webui/open-webui:main

Dans OLLAMA_BASE_URL, le nom ollama correspond au nom DNS du conteneur sur le réseau Docker. Il ne faut pas utiliser localhost : depuis Open WebUI, localhost désignerait le conteneur Open WebUI lui-même.

Le volume open-webui:/app/backend/data conserve la base de données, les comptes, les réglages et les conversations lorsque le conteneur est recréé. Sauvegardez régulièrement ce volume. Sans stockage persistant, supprimer le conteneur entraînerait la perte de ces données.

Si Ollama fonctionne directement sur l’hôte plutôt que dans Docker, utilisez l’adresse spéciale de la passerelle Docker :

docker run -d \
  --name open-webui \
  --restart unless-stopped \
  --add-host=host.docker.internal:host-gateway \
  -p 127.0.0.1:3000:8080 \
  -e OLLAMA_BASE_URL=http://host.docker.internal:11434 \
  -v open-webui:/app/backend/data \
  ghcr.io/open-webui/open-webui:main

Sur Linux, Ollama doit accepter les connexions provenant du réseau Docker. S’il écoute uniquement sur 127.0.0.1, Open WebUI ne pourra pas le joindre. Configurez alors prudemment OLLAMA_HOST, puis utilisez le pare-feu pour empêcher tout accès public au port 11434.

Contrôlez le démarrage avec :

docker logs -f open-webui

Pour une production reproductible, préférez à terme une version précise de l’image plutôt que le tag roulant main, après avoir testé la mise à jour.

Créer le premier compte administrateur

Ouvrez https://chat.exemple.fr après avoir configuré le reverse proxy. Pour un test local, utilisez http://127.0.0.1:3000 depuis le serveur ou passez par un tunnel SSH.

Sur une installation neuve, le premier compte créé devient automatiquement administrateur. Choisissez donc immédiatement une adresse contrôlée par votre organisation et un mot de passe long, unique et stocké dans un gestionnaire de mots de passe.

Cet administrateur peut gérer les connexions aux modèles, les utilisateurs, les droits et les réglages globaux. Selon les versions actuelles, l’inscription est automatiquement fermée après la création du premier compte. Vérifiez malgré tout son état dans les paramètres d’administration avant de publier l’interface.

Configurer les modèles, les utilisateurs et le RAG

Open WebUI interroge l’API Ollama et affiche les modèles disponibles dans le sélecteur de la fenêtre de chat. Si aucun modèle n’apparaît, ouvrez les paramètres administrateur, puis la section des connexions Ollama. Vérifiez l’URL, testez la connexion et confirmez avec ollama list qu’un modèle est bien présent côté serveur.

L’administrateur peut définir les modèles visibles, leurs paramètres par défaut et leurs droits d’accès. Cette séparation est utile lorsqu’un petit modèle rapide doit être proposé à tous, tandis qu’un modèle plus lourd reste réservé à certains groupes.

Open WebUI est conçu pour un usage multi-utilisateur. Chaque personne dispose de son compte, de ses conversations et de ses réglages. Depuis le panneau d’administration, vous pouvez créer ou approuver des utilisateurs, modifier leur rôle et contrôler les fonctionnalités accessibles. Évitez d’attribuer le rôle administrateur sans nécessité.

La fonction RAG permet d’interroger des documents sans réentraîner le modèle. Open WebUI extrait leur contenu, le découpe, crée des représentations vectorielles et transmet au LLM les passages jugés pertinents. Les documents réutilisables peuvent être organisés dans une base de connaissances depuis l’espace de travail.

La qualité dépend du modèle d’embeddings, du découpage et de la fenêtre de contexte du LLM. Avec un petit modèle Ollama, limitez la taille des documents et testez les réponses sur des questions dont vous connaissez la source. Une réindexation est nécessaire après un changement de modèle d’embeddings.

Sécuriser l’accès à Open WebUI

Ne publiez pas directement les ports 3000 et 11434 sur Internet. Le port 3000 transporte l’interface en HTTP tant qu’aucun reverse proxy ne termine la connexion TLS. Le port 11434 donne accès à l’API Ollama et doit rester privé.

Avec Caddy, une configuration minimale ressemble à ceci :

chat.exemple.fr {
    reverse_proxy 127.0.0.1:3000
}

Caddy récupère et renouvelle automatiquement le certificat HTTPS lorsque le domaine pointe vers le serveur et que les ports 80 et 443 sont accessibles. Nginx Proxy Manager ou Traefik conviennent également.

Complétez ce déploiement par quelques contrôles concrets :

  • conservez l’inscription publique désactivée
  • utilisez des mots de passe uniques et activez leur validation dans Open WebUI
  • limitez les administrateurs
  • sauvegardez le volume open-webui
  • mettez régulièrement à jour l’image après validation
  • protégez les ports avec le pare-feu
  • vérifiez les extensions et fournisseurs externes avant de les activer

Une interface auto-hébergée n’est souveraine que si son chemin de données l’est aussi. Un moteur de recherche externe, une API distante ou un fournisseur d’embeddings peut recevoir une partie des requêtes ou documents. Documentez ces flux pour rester cohérent avec vos obligations RGPD.

Utiliser Open WebUI au quotidien

Depuis la page principale, sélectionnez un modèle Ollama, ouvrez une nouvelle conversation et envoyez votre première requête. L’historique permet de reprendre un échange, de le renommer ou de le retrouver plus tard.

Pour analyser un fichier, téléversez-le dans le chat ou ajoutez-le à une base de connaissances. Posez ensuite une question précise et contrôlez les références remontées par le RAG. Surveillez enfin les journaux avec docker logs open-webui, l’espace utilisé par le volume et la charge du serveur Ollama lorsque plusieurs utilisateurs travaillent simultanément.