{"slug": "how-to-run-local-llms-with-open-webui-on-docker-ditch-the-0-mo-ai-subscriptions", "title": "How to Run Local LLMs with Open WebUI on Docker (Ditch the 0/mo AI Subscriptions)", "summary": "A developer's guide on SelfHostStack demonstrates how to replace paid AI subscriptions like ChatGPT Plus and Claude Pro with a self-hosted setup using Open WebUI and Ollama on a low-cost VPS. The article provides a Docker Compose configuration, model pull commands, and benchmarks showing cost savings and privacy benefits, with options for hybrid access to frontier models via APIs.", "body_md": "*Originally published on SelfHostStack*\n\nIf you pay $20/month for ChatGPT Plus or Claude Pro, you are paying $240 every single year for:\n\nWith modern quantized open-weight models (Llama 3.1, Mistral NeMo, DeepSeek-Coder, and Qwen 2.5), you can host your own private, unrestricted AI workspace on a low-cost VPS with **Open WebUI** and **Ollama**.\n\nIn this guide, we'll walk through the complete deployment using Docker Compose, setup reverse proxy authentication, and benchmark token generation speeds.\n\n| Model / Setup | Cost | Privacy / Retention | Context & Feature Limits |\n|---|---|---|---|\nChatGPT Plus / Claude Pro |\n$20/month ($240/yr) | Cloud training, data retained | Strict 3-hour message caps, hard rate limits |\nOpen WebUI + Ollama (VPS) |\n~$6 - $12/month VPS | 100% Private (Zero telemetry) | Unlimited messages, custom system prompts, RAG document chat |\nHybrid (Open WebUI + OpenRouter/DeepSeek API) |\n~$1 - $3/month (Pay per token) | Zero retention API options | Access to 100+ models in a unified ChatGPT-like UI |\n\n**Open WebUI** (70k+ GitHub stars) is arguably the most polished open-source AI frontend available:\n\nHere is the exact production-ready `docker-compose.yml`\n\nto run Open WebUI paired with Ollama:\n\n```\nversion: '3.8'\nservices:\n  open-webui:\n    image: ghcr.io/open-webui/open-webui:main\n    container_name: open-webui\n    restart: always\n    ports:\n      - \"3000:8080\"\n    environment:\n      - OLLAMA_BASE_URL=http://ollama:11434\n      - WEBUI_SECRET_KEY=generate_random_secret_string_here\n      - ENABLE_SIGNUP=false # Set to false after creating your admin account\n    volumes:\n      - webui-data:/app/backend/data\n    depends_on:\n      - ollama\n\n  ollama:\n    image: ollama/ollama:latest\n    container_name: ollama\n    restart: always\n    ports:\n      - \"11434:11434\"\n    volumes:\n      - ollama-models:/root/.ollama\n\nvolumes:\n  webui-data:\n  ollama-models:\n```\n\nFor lightweight models (like `llama3.2:3b`\n\nor `qwen2.5-coder:1.5b`\n\n), a standard 4GB RAM cloud instance works great. For larger 8B parameter models, choose a VPS with 8GB RAM and fast NVMe storage:\n\nSSH into your server and run:\n\n```\n# Install Docker Engine\ncurl -fsSL https://get.docker.com | sh\n\n# Create directory and start stack\nmkdir -p ~/ai-stack && cd ~/ai-stack\nnano docker-compose.yml # (paste the compose YAML above)\ndocker compose up -d\n```\n\nPull lightweight, high-performance models directly inside the Ollama container:\n\n```\n# Ultra-fast coding model (Qwen 2.5 Coder 7B)\ndocker exec -it ollama ollama pull qwen2.5-coder:7b\n\n# General reasoning model (Llama 3.1 8B)\ndocker exec -it ollama ollama pull llama3.1:8b\n\n# Extremely fast 3B model for low-resource VPS\ndocker exec -it ollama ollama pull llama3.2:3b\n```\n\nUse Caddy for automatic HTTPS:\n\n```\nai.yourdomain.com {\n    reverse_proxy localhost:3000\n}\n```\n\nIf you need occasional access to frontier models (Claude 3.5 Sonnet, GPT-4o, or DeepSeek-V3) for massive refactoring tasks, you don't need a $20/month subscription:\n\nLooking to replace other expensive developer and productivity tools? Explore our curated guides with verified Docker templates:", "url": "https://wpnews.pro/news/how-to-run-local-llms-with-open-webui-on-docker-ditch-the-0-mo-ai-subscriptions", "canonical_source": "https://dev.to/enfernandes/how-to-run-local-llms-with-open-webui-on-docker-ditch-the-0mo-ai-subscriptions-1d4h", "published_at": "2026-08-15 08:45:40+00:00", "updated_at": "2026-08-15 09:41:39.127462+00:00", "lang": "en", "topics": ["artificial-intelligence", "large-language-models", "developer-tools", "ai-infrastructure", "ai-products"], "entities": ["Open WebUI", "Ollama", "Docker", "Llama 3.1", "Mistral NeMo", "DeepSeek-Coder", "Qwen 2.5", "Caddy"], "alternates": {"html": "https://wpnews.pro/news/how-to-run-local-llms-with-open-webui-on-docker-ditch-the-0-mo-ai-subscriptions", "markdown": "https://wpnews.pro/news/how-to-run-local-llms-with-open-webui-on-docker-ditch-the-0-mo-ai-subscriptions.md", "text": "https://wpnews.pro/news/how-to-run-local-llms-with-open-webui-on-docker-ditch-the-0-mo-ai-subscriptions.txt", "jsonld": "https://wpnews.pro/news/how-to-run-local-llms-with-open-webui-on-docker-ditch-the-0-mo-ai-subscriptions.jsonld"}}