(installation propre, locale, sans npm côté hôte)
Cet article décrit une installation 100 % maîtrisée d’un LLM local avec Ollama et son interface web Open WebUI, sur Debian 12, en séparant clairement :
- le moteur IA (Ollama, côté hôte),
- l’interface utilisateur (Open WebUI, via Docker).
1️⃣ Installation d’Ollama (côté hôte)
Choix techniques
- Ollama installé hors système, dans
/home/ollama - Service systemd dédié
- Aucun paquet global Debian
- Modèles stockés sous
/home/ollama/models
Étapes principales
- Créer l’utilisateur dédié
sudo useradd -r -m -d /home/ollama -s /usr/sbin/nologin ollama
- Télécharger et installer Ollama
cd /home/ollama
curl -fL -o ollama.tar.zst https://ollama.com/download/ollama-linux-amd64.tar.zst
tar --zstd -xvf ollama.tar.zst
- Organisation
/home/ollama/
├── bin/ollama
├── lib/
├── models/
- Service systemd
[Service]
User=ollama
Group=ollama
WorkingDirectory=/home/ollama
Environment=OLLAMA_MODELS=/home/ollama/models
Environment=HOME=/home/ollama
ExecStart=/home/ollama/bin/ollama serve
Restart=always
- Démarrage
sudo systemctl enable --now ollama
- Vérification
curl http://127.0.0.1:11434/api/version
➡️ Ollama est maintenant actif comme service local, accessible via HTTP sur 127.0.0.1:11434.
2️⃣ Installation des modèles Ollama
Les modèles sont installés sur l’hôte, pas dans Docker.
Exemples :
sudo -u ollama -H /home/ollama/bin/ollama pull llama3.2
sudo -u ollama -H /home/ollama/bin/ollama pull qwen2.5:7b-instruct
Vérification :
sudo -u ollama -H /home/ollama/bin/ollama list
3️⃣ Installation d’Open WebUI (via Docker)
Choix techniques
- Open WebUI dans Docker
- Ollama reste sur l’hôte
- Communication via
host.docker.internal - Interface exposée uniquement en local (sécurité)
Commande Docker utilisée
docker run -d \
--name open-webui \
--restart unless-stopped \
-p 127.0.0.1:8181:8080 \
--add-host=host.docker.internal:host-gateway \
-e OLLAMA_BASE_URL=http://host.docker.internal:11434 \
-v open-webui:/app/backend/data \
ghcr.io/open-webui/open-webui:main
➡️ Open WebUI est accessible sur :
http://127.0.0.1:8181
4️⃣ Connexion Open WebUI ↔ Ollama
- Open WebUI interroge automatiquement :
http://host.docker.internal:11434
- Les modèles installés côté Ollama apparaissent immédiatement dans l’interface
- Aucun téléchargement de modèles depuis Open WebUI
5️⃣ Sécurité et bonnes pratiques
- Interface web liée à 127.0.0.1 uniquement
- Ollama non exposé au réseau
- Utilisateur système dédié
- Séparation claire :
- moteur IA (hôte)
- interface (conteneur)
6️⃣ Résultat final
- ✅ Ollama stable et autonome
- ✅ Open WebUI moderne et ergonomique
- ✅ Modèles locaux (llama3.2, qwen2.5)
- ✅ Aucune dépendance npm côté hôte
- ✅ Architecture claire et maintenable

Conclusion
Cette approche permet d’avoir un LLM local puissant, utilisable au quotidien, tout en conservant :
- le contrôle,
- la sécurité,
- et la simplicité d’administration.
Elle est parfaitement adaptée à un usage sysadmin, développement ou recherche, sur une machine personnelle ou un serveur.