ollama/compose.yml
2026-05-22 15:59:45 -04:00

39 lines
1.0 KiB
YAML

# ollama — local LLM/embedding runtime for the homelab.
#
# CPU-only deployment on herbydev. No GPU runtime (no `runtime: nvidia`,
# no `devices:` block). Reachable as `ollama:11434` from any container
# on the shared `homelab` network. Loopback-only on the host (no public
# exposure, no cloudflared route, no Tailscale binding).
#
# Models persist in the named `ollama-models` volume across restarts.
#
# Usage:
# docker compose -f compose.yml up -d
# docker exec ollama ollama pull <model>
# docker exec ollama ollama list
name: ollama
services:
ollama:
image: ollama/ollama:latest
container_name: ollama
restart: unless-stopped
environment:
- OLLAMA_KEEP_ALIVE=${OLLAMA_KEEP_ALIVE}
- OLLAMA_NUM_PARALLEL=${OLLAMA_NUM_PARALLEL}
ports:
- "127.0.0.1:11434:11434" # loopback on host; in-network via Docker DNS
volumes:
- ollama-models:/root/.ollama
networks:
- homelab
# No runtime/devices/gpus — CPU only by design.
volumes:
ollama-models:
networks:
homelab:
external: true