From 7f510dc8905b72e42e0211546ad52dcd4ba69fee Mon Sep 17 00:00:00 2001 From: pixelthorn Date: Wed, 1 Jul 2026 20:47:13 -0500 Subject: [PATCH] Add ollama.yaml --- ollama.yaml | 120 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 120 insertions(+) create mode 100644 ollama.yaml diff --git a/ollama.yaml b/ollama.yaml new file mode 100644 index 0000000..3cc0fc8 --- /dev/null +++ b/ollama.yaml @@ -0,0 +1,120 @@ + +services: + ollama: + image: ollama/ollama:rocm + container_name: ollama + restart: unless-stopped + environment: + - OLLAMA_VULKAN=1 + - TZ=America/Chicago + ports: + - "11434:11434" + networks: + - ollama-net + - proxy-net + devices: + # kfd and dri device access needed for AMDGPU ROCm support to work + - /dev/kfd:/dev/kfd + - /dev/dri:/dev/dri + volumes: + - /srv/docker/server/ollama/data:/root/.ollama + labels: + - rackpeek.name=Ollama + - rackpeek.tags=ai + + open-webui: + image: ghcr.io/open-webui/open-webui:main + container_name: open-webui + restart: unless-stopped + ports: + - "3122:8080" + environment: + - OLLAMA_BASE_URL=http://ollama:11434 + - CORS_ALLOW_ORIGIN=http://192.168.0.131:3122;${OPENWEBUI_URL} + - CHROMA_HTTP_HOST=chroma #Setting this variable is required for multi-worker or multi-replica deployments — it switches ChromaDB from the local SQLite-backed PersistentClient to a fork-safe HttpClient. + - CHROMA_HTTP_PORT=8000 + #Overrides the User-Agent header that the web loader (SafeWebBaseLoader) sends on outbound fetches for web search and the fetch_url tool. + #The default Python library UA is aggressively blocked by Cloudflare, Wikipedia, and similar bot-detection layers, which manifests as empty results or 403s when scraping or searching the public web. + - USER_AGENT=Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36 + networks: + - ollama-net + - proxy-net + volumes: + - /srv/docker/server/ollama/open-webui:/app/backend/data + labels: + - homepage.group=AI + - homepage.name=Open-WebUI + - homepage.icon=open-webui.png + - homepage.href=${OPENWEBUI_URL} + - homepage.description=Web UI for Ollama + - dockhand.url=${OPENWEBUI_URL} + - rackpeek.tags=ai + depends_on: + - ollama + - chroma + + chroma: + #Vector Database (Chroma DB): Stores document embeddings and performs high-speed similarity searches. + image: chromadb/chroma:latest + container_name: chroma + restart: unless-stopped + ports: + - "3123:8000" + networks: + - ollama-net + labels: + - rackpeek.name=chroma-db + - rackpeek.tags=ai + volumes: + - /srv/docker/server/ollama/chroma:/chroma/chroma + + mcpo: + image: ghcr.io/open-webui/mcpo:latest + container_name: mcpo + command: --api-key ${MCPO_KEY} --config /app/config/config.json --hot-reload + volumes: + - /srv/docker/server/ollama/open-webui/mcpo:/app/config + ports: + - 3111:8000 + restart: unless-stopped + labels: + - rackpeek.name=mcpo + - rackpeek.tags=ai + networks: + - ollama-net + + open-terminal: + image: ghcr.io/open-webui/open-terminal:latest + container_name: open-terminal + volumes: + - /srv/docker/server/ollama/open-webui/openterminal:/home/user + ports: + - 3112:8000 + restart: unless-stopped + labels: + - rackpeek.name=open-terminal + - rackpeek.tags=ai + networks: + - ollama-net + + #litellm: + # image: ghcr.io/berriai/litellm:main-latest + # container_name: litellm + # restart: unless-stopped + # ports: + # - "4001:4000" + # networks: + # - ollama-net + # - proxy-net + # volumes: + # - /srv/docker/server/litellm/config.yaml:/app/config.yaml + # - /etc/localtime:/etc/localtime:ro + # #command: ["--config", "/app/config.yaml", "--port", "4000"] + # depends_on: + # - ollama + +networks: + ollama-net: + external: true + proxy-net: + external: true \ No newline at end of file