mirror of
https://github.com/R0m1k3/Loki.git
synced 2026-10-17 12:16:21 +02:00
Conteneurisation : image CUDA autonome (moteur + UI, un seul conteneur)
- Dockerfile 3 étapes : llama.cpp CUDA (flags de backend_build.go, sauf GGML_NATIVE=OFF — l'image est bâtie sur un runner, pas sur la machine cible), binaire Go statique, runtime CUDA léger (tini, git, nodejs pour les serveurs MCP npx). - docker-entrypoint.sh : sème BIN/HOST/PORT (+ MODEL/CTX/NGL depuis l'env, au premier boot seulement), lance le moteur en supervision PID puis 'loki web' au premier plan. UI seule exposée (8090) ; le moteur (8080, non authentifié) reste interne. - Nouvelle commande 'loki config [get|set]' : configuration non interactive (la config vit dans bbolt, pas dans un fichier plat). - docker-compose.yml (build local, réservation GPU) + variante Unraid (image GHCR, runtime nvidia) ; volumes /data (LOKI_HOME) et /models. Un seul conteneur car llm_client.go joint le moteur sur localhost (hérité de l'amont).
This commit is contained in:
8 files changed
+292
No files matched your search
@@ -0,0 +1,38 @@
|
||||
# Loki — fork conteneurisé d'AJEAN (https://github.com/nathaninline/ajean, MIT)
|
||||
# Un seul service : le conteneur embarque le moteur llama.cpp (CUDA) ET l'UI.
|
||||
#
|
||||
# cp .env.example .env # ajuste si besoin
|
||||
# docker compose up --build # build local (30-45 min : compilation CUDA)
|
||||
#
|
||||
# Interface : http://localhost:8090
|
||||
# Pré-requis GPU : NVIDIA Container Toolkit sur l'hôte.
|
||||
services:
|
||||
loki:
|
||||
build:
|
||||
context: .
|
||||
args:
|
||||
# Restreins à ta carte pour un build plus court : 75=Turing (GTX 16xx/RTX 20xx),
|
||||
# 86=Ampere (RTX 30xx), 89=Ada (RTX 40xx).
|
||||
CUDA_ARCHS: ${CUDA_ARCHS:-75;86;89}
|
||||
container_name: loki
|
||||
ports:
|
||||
- "${LOKI_WEB_PORT:-8090}:${LOKI_WEB_PORT:-8090}"
|
||||
environment:
|
||||
- LOKI_WEB_PORT=${LOKI_WEB_PORT:-8090}
|
||||
# Semé UNE fois au premier démarrage (modifiable ensuite dans l'UI) :
|
||||
- LOKI_MODEL=${LOKI_MODEL:-}
|
||||
- LOKI_CTX=${LOKI_CTX:-}
|
||||
- LOKI_NGL=${LOKI_NGL:-}
|
||||
volumes:
|
||||
# /data = LOKI_HOME : config, base bbolt, mémoire, workspace, modèles téléchargés
|
||||
- ./data:/data
|
||||
# /models : dossier(s) de modèles GGUF supplémentaires (LOKI_MODEL_DIRS)
|
||||
- ./models:/models
|
||||
deploy:
|
||||
resources:
|
||||
reservations:
|
||||
devices:
|
||||
- driver: nvidia
|
||||
count: all
|
||||
capabilities: ["gpu"]
|
||||
restart: unless-stopped
|
||||
Reference in new issue
Block a user