Self-hosted bookmarks that tag themselves with local AI (Karakeep)
What they built
A homelab playbook that installs Karakeep, a self-hosted 'bookmark everything' manager, on Debian/Ubuntu with its official script. It wires automatic tagging to a local Ollama model so no bookmark or tag touches a cloud API.
Setup
- Debian 12 / Ubuntu 24.04 (author uses a Proxmox LXC), 2 CPU / 4 GB RAM / 30 GB disk floor
- Karakeep + Meilisearch via the official install script
- Ollama server with gemma3:4b (multimodal for text and image tagging)
Results & numbers
- CPU-only hardware: roughly 1-3 minutes per bookmark
Gotchas
- INFERENCE_TEXT_MODEL must be set, or Karakeep tries OpenAI and fails
- Small models choke on strict JSON-schema output; set INFERENCE_OUTPUT_SCHEMA=plain
- Raise the 30-second job timeout
- Never use localhost for OLLAMA_BASE_URL; inside the container it points to itself
“The plain-output setting is the make-or-break.”— peira.dev
Do it yourself
- Run the official karakeep-linux.sh as root
- Pull gemma3:4b on your Ollama server
- Append the env block below to /etc/karakeep/karakeep.env
- systemctl restart karakeep-workers karakeep-web
- Save a bookmark and watch the worker log for local calls
OLLAMA_BASE_URL=http://10.0.0.40:11434
INFERENCE_TEXT_MODEL=gemma3:4b
INFERENCE_IMAGE_MODEL=gemma3:4b
INFERENCE_CONTEXT_LENGTH=4096
INFERENCE_JOB_TIMEOUT_SEC=600
INFERENCE_OUTPUT_SCHEMA=plainRelated
Home RAG assistant for embedded-systems docs on Proxmox
Ollama, llama.cpp, Open WebUI, BGE-M3 and SearXNG in a GPU-passthrough VM. Moving from 6 GB to 16 GB of VRAM changed which models could run.
Paperless AI on an 8 GB RTX 3060 Ti shared with Frigate
Gemma 3 4B with embeddinggemma answers over 1,318 documents in about 5 seconds, on a GPU that's also running Frigate and Plex.
Hybrid workflow: local for private and repetitive, cloud for hard
A Linux sysadmin stopped trying to replace cloud LLMs. Ollama now handles private docs, overnight article summaries and VS Code autocomplete.
Self-hosted AI email assistant on Linux (n8n + Ollama)
Classifies IMAP mail with llama3.1:8b, routes it, saves reply drafts and extracts action items as JSON. Reports 85-95% classification accuracy.