-
-
Notifications
You must be signed in to change notification settings - Fork 2
plugin ollama
Local LLM provider for nSelf. Runs an Ollama Docker container that serves models locally and registers itself as an AI provider so all nSelf AI features can run offline, without an API key, and without sending data to any cloud service.
This is a config-type plugin — it orchestrates a Docker container via compose_fragment.yml. There is no separate nSelf Go service binary. The nSelf CLI injects the compose fragment during nself build, and the Ollama container runs alongside your other services.
On first start, the plugin auto-pulls gemma-3-4b unless you set a different default model via NSELF_OLLAMA_DEFAULT_MODEL.
nself plugin install ollama
nself build
nself startAfter nself start, the Ollama API is available at http://127.0.0.1:11434.
| Env var | Required | Default | Description |
|---|---|---|---|
NSELF_AI_PROVIDER |
No | openai |
Set to ollama to route all AI calls through this plugin |
NSELF_OLLAMA_HOST |
No | http://127.0.0.1:11434 |
Internal URL where Ollama is reachable |
NSELF_OLLAMA_DEFAULT_MODEL |
No | gemma-3-4b |
Model pulled on first start and used as default |
NSELF_OLLAMA_AUTO_PULL |
No | true |
Automatically pull the default model on container start |
NSELF_OLLAMA_GPU |
No | false |
Enable GPU passthrough (see GPU section below) |
NSELF_OLLAMA_CONTEXT_WINDOW |
No | 8192 |
Context window size in tokens |
NSELF_OLLAMA_TIMEOUT_SECONDS |
No | 120 |
Request timeout for model inference |
OLLAMA_ENABLED |
No | — | Set to true by the provider registration step |
PLUGIN_AI_OLLAMA_URL |
No | — | Mapped from NSELF_OLLAMA_HOST for plugin-ai |
PLUGIN_AI_OLLAMA_MODEL |
No | — | Mapped from NSELF_OLLAMA_DEFAULT_MODEL for plugin-ai |
The plugin adds an ollama service to your Docker Compose stack. Key details:
- Image:
ollama/ollama:latest - Models stored in a named Docker volume:
{PROJECT}_ollama_models - Health check:
curl -sf http://localhost:11434/api/version - Always binds port 11434 to
127.0.0.1— never exposed on a public interface
When NSELF_AI_PROVIDER=ollama is set, the plugin registers itself with plugin-ai via environment variable mapping:
NSELF_OLLAMA_HOST → PLUGIN_AI_OLLAMA_URL
NSELF_OLLAMA_DEFAULT_MODEL → PLUGIN_AI_OLLAMA_MODEL
OLLAMA_ENABLED=true
All AI features in nSelf (ɳClaw, cron AI steps, content summarization) then route through your local Ollama instance.
GPU support is opt-in and strictly localhost-only.
Enable GPU:
# In your .env.local or .env.secrets:
NSELF_OLLAMA_GPU=true
nself build # regenerates docker-compose with GPU block
nself restart ollamaWhen NSELF_OLLAMA_GPU=true, nself build injects the NVIDIA GPU passthrough block into the Ollama service definition:
deploy:
resources:
reservations:
devices:
- driver: nvidia
count: all
capabilities: [gpu]Security notes:
- GPU passthrough does NOT add any network surface. Port 11434 remains bound to
127.0.0.1. - NVIDIA CUDA or AMD ROCm drivers must be installed separately on the host.
- The
ollama/ollama:latestimage handles GPU detection internally. - ROCm support: use
ollama/ollama:rocminstead by overriding the image in your compose override file.
Pull additional models while the container is running:
# Via Docker exec:
docker exec -it {PROJECT}-ollama ollama pull llama3.2
# Or use the Ollama API directly:
curl http://127.0.0.1:11434/api/pull -d '{"name": "llama3.2"}'
# List installed models:
curl http://127.0.0.1:11434/api/tagsModels are persisted in the nself_ollama_models Docker volume and survive container restarts.
| Table | Purpose |
|---|---|
np_ollama_model_registry |
Tracks models pulled, their sizes, and last-used timestamps |
Container doesn't start: check that Docker is running and you have at least 2 GB of free memory (NSELF_OLLAMA_MIN_MEMORY_MB=2048).
Model pull hangs: large models (>4 GB) can take several minutes on first pull. Check progress with docker logs {PROJECT}-ollama.
AI plugin not using Ollama: ensure NSELF_AI_PROVIDER=ollama is set and you've run nself build + nself restart.
- plugin-ai — the AI plugin that consumes this provider
- Ollama model library — available models
ɳSelf CLI v1.0.9. MIT licensed. Docs CC BY 4.0.
GitHub · Issues · Discussions · nself.org · docs.nself.org
Getting Started
Commands
- Commands, Overview
- Lifecycle: cmd-init · cmd-build · cmd-start · cmd-stop · cmd-restart · cmd-dev
- Monitoring: cmd-status · cmd-logs · cmd-health · cmd-urls · cmd-doctor · cmd-monitor · cmd-alerts · cmd-watchdog · cmd-dogfood
- Data: cmd-db · cmd-backup · cmd-dr · cmd-queue · cmd-webhooks
- Config: cmd-config · cmd-service · cmd-env · cmd-promote
- Networking: cmd-ssl · cmd-trust · cmd-dns-setup
- Security: cmd-security · cmd-secrets · cmd-waf
- Tenancy: cmd-tenant · cmd-billing
- Plugins: cmd-plugin · cmd-license
- AI: cmd-ai · cmd-claw · cmd-model
- Templates: cmd-template
- Utilities: cmd-exec · cmd-clean · cmd-reset · cmd-update · cmd-upgrade · cmd-version · cmd-admin · cmd-migrate · cmd-migrate-firebase · cmd-migrate-supabase · cmd-completion
Features
- Features, Overview
- Feature-Auth
- Feature-Storage
- Feature-Search
- Feature-Functions
- Feature-Email
- Feature-Monitoring
- Feature-Plugins
- Feature-ɳClaw, AI Assistant
- Feature-ɳChat, Messaging
- Feature-ɳTV, Media Player
- Feature-ɳFamily, Family Social
- Feature-ɳCloud, Managed Hosting
- Feature-Memory-Rooms, Knowledge Organization
- Feature-Agent-Dashboard, Agent Metrics
- Feature-Image-Generation, AI Image Generation
Configuration
- Configuration, Overview
- Config-Env-Vars
- Config-Postgres
- Config-Hasura
- Config-Auth
- Config-Nginx
- Config-Optional-Services
- Config-Custom-Services
- Config-System
Plugins (87 + 10 monitoring)
Free (25)
- plugin-backup
- plugin-content-acquisition
- plugin-content-progress
- plugin-cron
- plugin-donorbox
- plugin-feature-flags
- plugin-github
- plugin-github-runner
- plugin-invitations
- plugin-jobs
- plugin-link-preview
- plugin-mdns
- plugin-mlflow
- plugin-monitoring
- plugin-notifications
- plugin-notify
- plugin-paypal
- plugin-search
- plugin-shopify
- plugin-stripe
- plugin-subtitle-manager
- plugin-tokens
- plugin-torrent-manager
- plugin-vpn
- plugin-webhooks
Pro (62)
- plugin-access-controls
- plugin-activity-feed
- plugin-admin-api
- plugin-ai
- plugin-analytics
- plugin-auth
- plugin-backup-pro
- plugin-bots
- plugin-browser
- plugin-calendar
- plugin-cdn
- plugin-chat
- plugin-claw
- plugin-claw-budget
- plugin-claw-news
- plugin-claw-web
- plugin-cloudflare
- plugin-cms
- plugin-compliance
- plugin-cron-pro
- plugin-ddns
- plugin-devices
- plugin-documents
- plugin-donorbox-pro
- plugin-entitlements
- plugin-epg
- plugin-file-processing
- plugin-game-metadata
- plugin-geocoding
- plugin-geolocation
- plugin-google
- plugin-home
- plugin-idme
- plugin-knowledge-base
- plugin-linkedin
- plugin-livekit
- plugin-media-processing
- plugin-meetings
- plugin-moderation
- plugin-mux
- plugin-notify-pro
- plugin-object-storage
- plugin-observability
- plugin-paypal-pro
- plugin-photos
- plugin-podcast
- plugin-post
- plugin-realtime
- plugin-recording
- plugin-retro-gaming
- plugin-rom-discovery
- plugin-shopify-pro
- plugin-social
- plugin-sports
- plugin-stream-gateway
- plugin-streaming
- plugin-stripe-pro
- plugin-support
- plugin-tmdb
- plugin-voice
- plugin-web3
- plugin-workflows
Planned (26)
plugin-auditplugin-blogplugin-checkoutplugin-commerceplugin-drmplugin-exportplugin-flowplugin-importplugin-ldapplugin-mailgunplugin-mediaplugin-oauth-providersplugin-pagesplugin-postmarkplugin-rate-limitplugin-reportsplugin-samlplugin-schedulerplugin-sendgridplugin-ssoplugin-subscriptionplugin-thumbplugin-transcoderplugin-twilioplugin-wafplugin-watermark
Guides
- Guide-Production-Deployment
- Guide-SSL-Setup
- Guide-Multi-Tenancy
- Guide-Security-Hardening
- Guide-Monitoring-Setup
- Guide-Backup-Restore
- Guide-Custom-Services
- Guide-Migration-from-v1
Architecture
Reference
- API-Reference
- reference-error-codes, Error Codes
Licensing
Security
Brand
Operations
- operations/release-cascade, Release Cascade
- operations/self-healing, Self-Healing Schema
- operations/redis-tuning, Redis Pool Tuning
- operations/meilisearch-warmup, MeiliSearch Warm-Up
- operations/jwt-rotation, JWT Key Rotation
- operations/windows-wsl2-setup, Windows / WSL2 Setup
- operations/gemini-oauth-reauth, Gemini OAuth Reauth
Contributing
Admin
- USER-ACTION-QUEUE, Pending Admin Actions