Commit Graph

50 Commits

Author SHA1 Message Date
builder555
4443799cc9 fix(Collections): update ZIM files to latest versions (#332)
* fix: update data sources to newer versions
* fix: bump spec version for wikipedia
2026-03-25 16:30:35 -07:00
Chris Sherwood
571f6bb5a2 fix(GPU): persist GPU type to KV store for reliable passthrough
GPU detection results were only applied at container creation time and
never persisted. If live detection failed transiently (Docker daemon
hiccup, runtime temporarily unavailable), Ollama would silently fall
back to CPU-only mode with no way to recover short of force-reinstall.

Now _detectGPUType() persists successful detections to the KV store
(gpu.type = 'nvidia' | 'amd') and uses the saved value as a fallback
when live detection returns nothing. This ensures GPU config survives
across container recreations regardless of transient detection failures.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-20 11:46:10 -07:00
Jake Turner
5dc48477f6 fix(Docker): ensure fresh GPU detection when Ollama ctr updated 2026-03-20 11:46:10 -07:00
Jake Turner
58b106f388 feat: support for updating services 2026-03-11 14:08:09 -07:00
Jake Turner
6817e2e47e fix: improve type-safety for KVStore values 2026-03-03 20:51:38 -08:00
Jake Turner
a3f10dd158 fix: update default branch name 2026-03-01 16:08:46 -08:00
Jake Turner
43ebaa93c1 fix(AI): leave chat suggestions disabled by default 2026-02-18 14:52:06 -08:00
Jake Turner
77f1868cf8 fix(AI): improve GPU detection logic 2026-02-18 14:52:06 -08:00
Chris Sherwood
c16cfc3a93 fix(GPU): detect NVIDIA GPUs via Docker API instead of lspci
The previous lspci-based GPU detection fails inside Docker containers
because lspci isn't available, causing Ollama to always run CPU-only
even when a GPU + NVIDIA Container Toolkit are present on the host.

Replace with Docker API runtime check (docker.info() -> Runtimes) as
primary detection method. This works from inside any container via the
mounted Docker socket and confirms both GPU presence and toolkit
installation. Keep lspci as fallback for host-based installs and AMD.

Also add Docker-based GPU detection to benchmark hardware info — exec
nvidia-smi inside the Ollama container to get the actual GPU model name
instead of showing "Not detected".

Tested on nomad3 (Intel Core Ultra 9 285HX + RTX 5060): AI performance
went from 12.7 tok/s (CPU) to 281.4 tok/s (GPU) — a 22x improvement.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-08 15:18:52 -08:00
Jake Turner
12286b9d34 feat: display model download progress 2026-02-06 16:22:23 -08:00
Jake Turner
bfc6c3d113 fix(Docker): ensure containers fully removed on failed service install 2026-02-04 17:05:34 -08:00
Jake Turner
ab07551719 feat: auto add NOMAD docs to KB on AI install 2026-02-03 23:15:54 -08:00
Jake Turner
a697d930fe feat(AI): add Ollama support for NVIDIA and AMD GPUs 2026-02-02 00:24:10 +00:00
Jake Turner
31c671bdb5 fix: service name defs and ollama ui location 2026-02-01 05:46:23 +00:00
Jake Turner
adf76d272e fix: remove Open WebUI 2026-01-31 20:39:49 -08:00
Jake Turner
50174d2edb feat(RAG): [wip] RAG capabilities 2026-01-31 20:39:49 -08:00
Jake Turner
c78736c8da feat(Docker): avoid repulling existing images 2026-01-31 20:39:49 -08:00
Jake Turner
64e6e11389 feat(Docker): container URL resolution util and networking improvs 2026-01-24 15:27:56 -08:00
Chris Sherwood
755807f95e feat: Add system benchmark feature with NOMAD Score
Add comprehensive benchmarking capability to measure server performance:

Backend:
- BenchmarkService with CPU, memory, disk, and AI benchmarks using sysbench
- Database migrations for benchmark_results and benchmark_settings tables
- REST API endpoints for running benchmarks and retrieving results
- CLI commands: benchmark:run, benchmark:results, benchmark:submit
- BullMQ job for async benchmark execution with SSE progress updates
- Synchronous mode option (?sync=true) for simpler local dev setup

Frontend:
- Benchmark settings page with circular gauges for scores
- NOMAD Score display with weighted composite calculation
- System Performance section (CPU, Memory, Disk Read/Write)
- AI Performance section (tokens/sec, time to first token)
- Hardware Information display
- Expandable Benchmark Details section
- Progress simulation during sync benchmark execution

Easy Setup Integration:
- Added System Benchmark to Additional Tools section
- Built-in capability pattern for non-Docker features
- Click-to-navigate behavior for built-in tools

Fixes:
- Docker log multiplexing issue (Tty: true) for proper output parsing
- Consolidated disk benchmarks into single container execution

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-22 21:48:12 -08:00
Jake Turner
9bb4ff5afc feat: force-reinstall option for apps 2026-01-19 22:50:15 -08:00
Jake Turner
937da5d869 feat(Open WebUI): manage models via Command Center 2026-01-19 22:15:52 -08:00
Chris Sherwood
d86c78dba5 feat: Add Windows Docker Desktop support for local development
- Detect Windows platform and use named pipe (//./pipe/docker_engine)
  instead of Unix socket for Docker Desktop compatibility
- Add NOMAD_STORAGE_PATH environment variable for configurable
  storage paths across different platforms
- Update seeder to use environment variable with Linux default
- Document new environment variable in .env.example

This enables local development on Windows machines with Docker Desktop
while maintaining Linux production compatibility.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-19 10:29:24 -08:00
Jake Turner
003902b84b fix(Docker): improve container state management 2026-01-16 10:35:37 -08:00
Jake Turner
c46b75e63d fix(admin): improve duplicate install request handling 2026-01-13 06:58:05 -08:00
Jake Turner
9ec514e145
fix(Zim): storage path 2025-12-07 20:18:58 -08:00
Jake Turner
2ff7b055b5
fix(Kiwix): initial download and setup 2025-12-07 16:04:41 -08:00
Jake Turner
7569aa935d
feat: background job overhaul with bullmq 2025-12-06 23:59:01 -08:00
Jake Turner
95ba0a95c9 fix: download util improvements 2025-12-05 18:16:23 -08:00
Jake Turner
605dce11e8 fix(Kiwix): initial zim file download 2025-12-05 18:16:23 -08:00
Jake Turner
824fc613b6 fix(DockerService): cleanup old OSM stuff 2025-12-05 15:47:22 -08:00
Jake Turner
9670a78fb4 feat: kolibri app 2025-11-18 16:35:16 -08:00
Jake Turner
4da08a8312 fix(OSM): apply dir permission fixes more robustly 2025-10-09 21:51:07 -07:00
Jake Turner
033cc10420 feat: add flatnotes as app 2025-10-06 23:53:40 -07:00
Jake Turner
1df7c490a6 feat: add cyberchef as app 2025-10-06 23:22:50 -07:00
Jake Turner
478427060f fix(OSM): renderer file perms 2025-10-06 22:22:55 -07:00
Jake Turner
85e6b84e32 fix(OSM): use absolute host paths 2025-10-06 21:13:22 -07:00
Jake Turner
4e1377554a fix(OSM): directory paths and access 2025-10-06 21:13:22 -07:00
Jake Turner
51583c8925 fix(OSM): error handling 2025-10-06 21:13:22 -07:00
Jake Turner
876475e25b fix(ZIM): host initial zim download in GH repo 2025-09-02 22:44:01 -07:00
Jake Turner
3dbcd7a714 fix(OSM): increase memory for import 2025-08-20 23:05:19 -07:00
Jake Turner
b29dd99fd7 fix(OSM): change default import file 2025-08-20 23:05:19 -07:00
Jake Turner
2099750e06 fix(OSM): osm installation 2025-08-20 23:05:19 -07:00
Jake Turner
5ee949b96a fix(Docker): [wip] OSM install fixes 2025-08-20 23:05:19 -07:00
Jake Turner
9e216c366f feat(ZIM): improved ZIM downloading and auto-restart kiwix serve 2025-08-20 23:05:19 -07:00
Jake Turner
7c2b0964dc feat: container controls & convienience scripts 2025-08-08 15:07:32 -07:00
Jake Turner
5fc490715d ref: cleanup service seeder 2025-08-08 15:07:32 -07:00
Jake Turner
2373f2c1b2 fix(open-webui): ollama connection 2025-07-11 20:21:44 -07:00
Jake Turner
3b81e00a69 feat: openwebui+ollama and zim management 2025-07-09 09:08:21 -07:00
Jake Turner
39d75c9cdf feat: init app installation and documentation 2025-06-30 01:44:42 -07:00
Jake Turner
b33a1b3e37 feat: initial commit 2025-06-29 15:51:08 -07:00