Aller au contenu
5 minutes

Open WebUI devant Ollama : installer, connecter, verrouiller les comptes

Installer Open WebUI en Docker ou en Python, le relier à Ollama, sécuriser le premier compte administrateur et ne publier son port que sur 127.0.0.1, car Docker contourne ufw.

Open WebUI devant Ollama : installer, connecter, verrouiller les comptes

Open WebUI ajoute à Ollama une interface web de discussion, multi-utilisateur. L’installation tient en une commande ; les comptes et l’exposition demandent plus d’attention.

Ce qu’apporte Open WebUI

Le README du projet décrit une interface de chat qui se connecte à Ollama et intègre un RAG local : documents appelés avec la commande #, recherche hybride BM25 et vectorielle, bases vectorielles au choix (ChromaDB, PGVector, Qdrant…). Le principe est détaillé dans ce billet.

Installer avec Docker

La commande de la documentation publie le port 3000 de l’hôte vers le port 8080 du conteneur, ajoute host.docker.internal pour joindre un Ollama installé sur la machine, range les données dans le volume open-webui et passe une clé de session WEBUI_SECRET_KEY, générée avec openssl rand -hex 32. Deux ajustements ci-dessous : la clé est rangée dans un fichier protégé plutôt que tapée en clair, ce qui la garde hors de l’historique du shell, et le port n’est publié que sur 127.0.0.1.

# clé de session, générée une fois et conservée
(umask 077; openssl rand -hex 32 > ~/.open-webui-secret)

docker run -d -p 127.0.0.1:3000:8080 \
  --add-host=host.docker.internal:host-gateway \
  -v open-webui:/app/backend/data \
  -e WEBUI_SECRET_KEY="$(cat ~/.open-webui-secret)" \
  --name open-webui --restart always \
  ghcr.io/open-webui/open-webui:main

L’interface répond ensuite sur http://localhost:3000. Sans WEBUI_SECRET_KEY persistante, prévient la documentation, tout le monde est déconnecté à chaque recréation du conteneur.

Ou avec Python

pip install open-webui
open-webui serve

La page Quick Start indique Python 3.11 et 3.12, pas encore 3.13. Le serveur écoute alors sur le port 8080, et signe les sessions avec une clé écrite dans .webui_secret_key, dans le répertoire de lancement.

Connecter Ollama

Au démarrage, Open WebUI tente seul de joindre Ollama (port 11434). La connexion se gère dans Settings > Admin > Connections, bouton Manage. Depuis Docker, avec Ollama sur l’hôte, l’URL indiquée est http://host.docker.internal:11434 ; pour un Ollama distant, la variable OLLAMA_BASE_URL le désigne au lancement. Les modèles se téléchargent ensuite depuis l’interface.

En cas d’échec, la documentation désigne d’abord le réseau. Ouvrir l’API d’Ollama pour contourner n’est pas anodin : elle n’a pas d’authentification (voir ici).

Le premier compte est administrateur

Le premier compte créé devient administrateur : il gère les utilisateurs et tous les réglages de l’instance. Les inscriptions se ferment ensuite d’elles-mêmes. Tant que ce compte n’existe pas, le premier visiteur le devient : on le crée juste après le lancement.

Pour accueillir d’autres utilisateurs, New Sign Ups se réactive dans Settings > Admin > Authentication ; les nouveaux comptes restent alors en attente (Pending) jusqu’à validation dans l’Admin Panel. C’est aussi la valeur par défaut de DEFAULT_USER_ROLE.

Ne pas l’exposer sans précaution

Docker publie par défaut un port sur toutes les adresses de l’hôte, ce que sa documentation qualifie de non sécurisé par défaut. Pire, Docker et ufw sont incompatibles : le trafic vers un port publié est routé avant que les règles ufw ne s’appliquent. Un -p 3000:8080 reste donc joignable malgré un ufw en « deny ». Préfixer par 127.0.0.1 réserve l’accès à l’hôte, avec Docker 28.0.0 ou plus récent ; avant, la documentation signale que des hôtes du même segment L2 peuvent atteindre un port publié sur 127.0.0.1. Pour un accès distant, un reverse proxy en HTTPS devant ce port local, avec les comptes Open WebUI verrouillés comme ci-dessus.

Ce qu’il faut retenir

  • -p 127.0.0.1:3000:8080 plutôt que -p 3000:8080, avec Docker 28.0.0 ou plus récent : Docker publie sur toutes les interfaces et passe devant ufw.
  • Créer le compte administrateur tout de suite : le premier inscrit le devient.
  • Une WEBUI_SECRET_KEY générée une fois et conservée, sinon déconnexion générale à chaque recréation.
  • Après le premier lancement, les ConfigVar se règlent dans l’interface, plus par variable d’environnement.

In English

Install Open WebUI with Docker or Python, connect it to Ollama, secure the first administrator account, and publish its port only on 127.0.0.1, because Docker bypasses ufw. The first account created becomes administrator before sign-ups close, and without a persistent WEBUI_SECRET_KEY every container recreation logs all users out.

Sources & vérification

Relevé sur : Documentation Open WebUI et Docker, relevé 2026-10

Comment les billets sont vérifiés et corrigés