[{"data":1,"prerenderedAt":117},["ShallowReactive",2],{"seo-verification":3,"blog-heberger-quivr-vps-en":6},{"google":4,"bing":5},"EycwPY2XMyTkVzas3n1ygeNJFGAH513qrMjfDljzsMQ","",{"id":7,"slug":8,"title":9,"excerpt":10,"readTime":11,"views":12,"isPinned":13,"publishedAt":14,"category":15,"categories":21,"featuredImage":23,"bgImage":24,"posterImage":25,"relatedSolution":26,"intro":28,"sections":29,"ctaTitle":72,"ctaBody":73,"ctaButton":74,"ctaUrl":75,"relatedPosts":76},17,"heberger-quivr-vps","How to host Quivr on a VPS","Host Quivr on a VPS to build your AI second brain: file ingestion, advanced RAG and an API, all under your control.",8,229,false,"2026-06-03T00:00:00+00:00",{"id":16,"name":17,"slug":18,"color":19,"icon":20},1,"Artificial Intelligence","intelligence-artificielle","bg-purple-500\u002F10 text-purple-400","ia",[22],{"id":16,"name":17,"slug":18,"color":19,"icon":20},null,"\u002Fblog\u002Fcovers\u002Fbg.svg","\u002Fblog\u002Fcovers\u002Fheberger-quivr-vps-poster.svg",{"categorySlug":20,"appSlug":27},"quivr","Quivr presents itself as an AI-powered second brain: you feed it documents, notes and URLs, then query it in natural language. Built on Supabase and a RAG pipeline, it self-hosts on a VPS to keep your knowledge with you. Here is how to put it into production.",[30,34,44,47,69],{"type":31,"title":32,"body":33},"h2","Why self-host Quivr on a VPS","Quivr organizes your knowledge into knowledge bricks (the brains) and uses a modern RAG pipeline built on Supabase (PostgreSQL + pgvector) for vector storage, a Python backend (FastAPI) and a Next.js frontend. The cloud version imposes its quotas and stores your data at the vendor; by hosting it on a VPS, you keep control of the Supabase database, the uploaded files and the LLM keys. This is especially relevant for an agency that wants an AI knowledge base shared between consultants, with authentication, without entrusting client documents to a third-party service and without an artificial usage cap.",{"type":35,"title":36,"items":37},"ul","Concrete benefits of self-hosting",[38,39,40,41,42,43],"Storage of all your knowledge in your own Supabase instance","Organization into several thematic brains with fine-grained access management","Varied ingestion: PDF, DOCX, transcribed audio, web pages, text files","REST API you can leverage to integrate Quivr into your in-house applications","Free choice of LLM (OpenAI, Anthropic, local Ollama) with no imposed billing","No question or storage quota dictated by a SaaS provider",{"type":31,"title":45,"body":46},"Hardware and software prerequisites","Quivr is a multi-service stack (frontend, backend, worker, full Supabase, Redis). It is the most resource-hungry tool in this series component-wise. Plan for 4 vCPUs and 8 GB of RAM at minimum, 16 GB being comfortable if you add a local LLM, plus 20 to 30 GB of disk for the Postgres database, the embeddings and the files. On the software side: Docker and Docker Compose are mandatory (the stack depends on them), a domain with subdomains for the frontend and the API, and at least one LLM API key as well as an embeddings key. Good bandwidth makes ingesting large files easier.",{"type":48,"title":49,"steps":50},"steps","Deploying Quivr with Docker Compose",[51,54,57,60,63,66],{"title":52,"body":53},"Clone and configure the environment","On the VPS, run `git clone https:\u002F\u002Fgithub.com\u002FQuivrHQ\u002Fquivr && cd quivr`. Copy the example files: `cp .env.example .env` and fill in the keys (`OPENAI_API_KEY`, Supabase keys, `JWT_SECRET_KEY`).",{"title":55,"body":56},"Initialize Supabase","Quivr ships its own Supabase stack. Run the provided database migration to create the tables, the pgvector extensions and the RLS policies required to store the brains and the embeddings.",{"title":58,"body":59},"Start the full stack","Launch all the services with `docker compose pull && docker compose up -d`. The stack includes the FastAPI backend, the ingestion worker, Redis and the Next.js frontend. Check the status with `docker compose ps`.",{"title":61,"body":62},"Check the ingestion worker","File processing goes through an asynchronous worker. Monitor its logs (`docker compose logs -f worker`) during a first upload to confirm that chunking and vectorization complete without error.",{"title":64,"body":65},"Configure the reverse proxy and SSL","Map `app.yourdomain.com` to the frontend and `api.yourdomain.com` to the backend via Caddy or Nginx, each with its Let's Encrypt certificate. Make sure the frontend points to the public URL of the API in its `.env`.",{"title":67,"body":68},"Create the first account and test","Open the frontend, create an account via Supabase authentication, create a brain, upload a document and ask a question to validate the RAG chain end to end.",{"type":70,"body":71},"tip","Watch the memory of the ingestion worker: large PDFs and audio files to transcribe can saturate the RAM and get the container killed by the OOM killer. Limit the upload size at the reverse proxy level (`client_max_body_size` under Nginx) and, if you ingest a lot, offload the embeddings to a dedicated service rather than processing everything on the default worker.","Build your AI second brain","Quivr's multi-service stack demands solid resources. The ServOrbit Cloud VPS offers the RAM, vCPUs and SSD required, with Docker Compose ready to orchestrate Supabase, the backend and the worker.","Deploy on a Cloud VPS","\u002Fvps-cloud",[77,90,104],{"id":16,"slug":78,"title":79,"excerpt":80,"readTime":81,"views":82,"isPinned":13,"publishedAt":83,"category":84,"categories":85,"featuredImage":23,"bgImage":24,"posterImage":87,"relatedSolution":88},"heberger-open-webui","How to Host Open WebUI on a VPS","A complete guide to deploying Open WebUI on your own VPS. Keep control of your data, avoid cloud API costs, and access your LLMs from a clean web interface.",6,3200,"2026-06-01T00:00:00+00:00",{"id":16,"name":17,"slug":18,"color":19,"icon":20},[86],{"id":16,"name":17,"slug":18,"color":19,"icon":20},"\u002Fblog\u002Fcovers\u002Fheberger-open-webui-poster.svg",{"categorySlug":20,"appSlug":89},"open-webui",{"id":91,"slug":92,"title":93,"excerpt":94,"readTime":95,"views":96,"isPinned":13,"publishedAt":97,"category":98,"categories":99,"featuredImage":23,"bgImage":24,"posterImage":101,"relatedSolution":102},2,"deployer-dify-vps","Deploying Dify on a VPS: AI Workflows Under Control","Install Dify on a ServOrbit VPS to build agents, chatflows and AI apps without losing control of your data.",7,2480,"2026-02-11T00:00:00+00:00",{"id":16,"name":17,"slug":18,"color":19,"icon":20},[100],{"id":16,"name":17,"slug":18,"color":19,"icon":20},"\u002Fblog\u002Fcovers\u002Fdeployer-dify-vps-poster.svg",{"categorySlug":20,"appSlug":103},"dify",{"id":81,"slug":105,"title":106,"excerpt":107,"readTime":108,"views":109,"isPinned":13,"publishedAt":110,"category":111,"categories":112,"featuredImage":23,"bgImage":24,"posterImage":114,"relatedSolution":115},"openclaw-vps","Deploying OpenClaw on a VPS","A guide to deploying OpenClaw on your own VPS. Keep control of your AI agents and your data within your own infrastructure.",5,422,"2026-06-11T00:00:00+00:00",{"id":16,"name":17,"slug":18,"color":19,"icon":20},[113],{"id":16,"name":17,"slug":18,"color":19,"icon":20},"\u002Fblog\u002Fcovers\u002Fopenclaw-vps-poster.svg",{"categorySlug":20,"appSlug":116},"openclaw",1785628446655]