Technical Tutorials
Recommended AI Projects to Deploy on a VPS (2026): 8 Self-Hosted Open-Source Projects, Specs and Costs Explained
Beyond the overexposed options like Dify, AnythingLLM and Ollama, what other AI projects can you run on a VPS? This article picks 8 projects, ordered from lowest to highest VPS resource requirements, and explains what each one does, how much hardware it needs, and how painful it is to deploy.

Beyond the overexposed options like Dify, AnythingLLM and Ollama, what other AI projects can you run on a VPS?
The answer is: quite a few. In 2026 a batch of mature self-hosted open-source projects has emerged on GitHub, spanning AI chat, knowledge bases, automation workflows and backend-as-a-service. Most of them start with a single Docker Compose command, and a 2-core 4GB VPS can run them.
This article picks 8 projects, ordered from lowest to highest VPS resource requirements, and explains clearly what each one does, how much hardware it needs, and how painful it is to deploy.
| Project | Positioning | Minimum specs | Docker deployment | License |
|---|---|---|---|---|
| PocketBase | Backend-as-a-Service (BaaS) | 1 core 1GB | Single binary, no Docker needed | MIT |
| LibreChat | Multi-model AI chat | 2 cores 2GB | Docker Compose | MIT |
| ActivePieces | Workflow automation (Zapier alternative) | 2 cores 2GB | Docker Compose | MIT |
| Khoj | AI second brain | 2 cores 4GB | Docker Compose | AGPL-3.0 |
| Outline | Knowledge base/Wiki (Notion alternative) | 2 cores 4GB | Docker Compose | BSL-1.1 |
| Windmill | Developer platform (Retool alternative) | 4 cores 4GB | Docker Compose | AGPLv3 |
| Plane | Project management (Jira alternative) | 4 cores 8GB | Docker Compose | AGPL-3.0 |
| ComfyUI | AI image generation (Stable Diffusion) | Requires GPU | Docker or run directly | GPL-3.0 |
If you just want to run something usable on a VPS, you don't need to read the whole thing. Just find which one matches your needs:
- Want a lightweight backend for a frontend app → PocketBase
- Want a ChatGPT alternative that can switch between multiple models → LibreChat
- Want to automate some repetitive work → ActivePieces
- Want AI to help you organize notes and documents → Khoj
- Want to build a team knowledge base → Outline
- Want non-technical people to build apps by drag and drop → Windmill
- Want a project management tool → Plane
- Want to run AI image generation locally → ComfyUI (but you need a GPU)
GitHub: 59,000+ stars | Language: Go | License: MIT
PocketBase isn't an AI project in the traditional sense, but the problem it solves is closely tied to AI application development — you need a backend to store user data and files and manage permissions, without writing one from scratch.
It's just a single file compiled from Go, with built-in SQLite, real-time subscriptions, authentication, file storage and an admin panel. No PostgreSQL, no Redis, no Docker Compose needed.
What scenarios it suits:
- Backend for a frontend app (React/Vue/Flutter)
- The data layer for internal tools
- Projects that need to validate an MVP quickly
VPS spec recommendations:
- Validation stage: 1 core 1GB is enough, run the single file directly
- Production use: 2 cores 2GB, managed by systemd
- No Docker needed, just download the binary and run it
Note: SQLite has bottlenecks under high-concurrency writes. If read/write volume grows later in the project, switch to PostgreSQL when you should — PocketBase officially supports external database adapters too.
GitHub: 40,700+ stars | Language: TypeScript | License: MIT
LibreChat is an open-source multi-model AI chat interface. Once you configure API keys for OpenAI, Claude, Gemini and local Ollama, you can switch between them in a single interface. The frontend experience feels a lot like ChatGPT Plus.
Why it's recommended:
- MIT license, so commercial use is fine too
- Supports RAG (upload files and let the AI answer based on the documents)
- Multi-user support with permission management
- Good-looking interface, unlike some self-hosted options that look open-source at a glance
VPS spec recommendations:
- Starts at 2 cores 2GB, one-command Docker Compose deployment
- Requires MongoDB + Meilisearch (full-text search)
- If you want RAG, you additionally need a vector database (PGVector)
Actual overhead: MongoDB and Meilisearch together eat about 1GB of memory. The rest goes to the system and LibreChat itself; a 2-core 2GB VPS can barely run it, and 4GB is more comfortable.
Pitfall: LibreChat updates fairly frequently, so pin the version number before upgrading — don't just docker compose pull latest.
GitHub: 23,300+ stars | Language: TypeScript | License: MIT
n8n is good, but the community edition has more and more restrictions. ActivePieces is the most direct alternative to n8n, MIT-licensed, with no feature crippling.
It supports 200+ app integrations (Gmail, Slack, GitHub, Notion, etc.) and lets you build automation workflows by drag and drop. The interface is well made and slightly easier to get started with than n8n.
VPS spec recommendations:
- Runs on 2 cores 2GB, only needs PostgreSQL + Redis
- Memory overhead is even a bit lower than n8n
How to choose versus n8n: if you care about license freedom, choose ActivePieces. If you already use n8n and have many workflows, the migration cost is higher than continuing with n8n. The two tools do almost the same thing.
GitHub: 35,800+ stars | Language: Python | License: AGPL-3.0
Khoj is an AI personal assistant that lets you feed your notes, documents and web bookmarks to the AI so it answers questions based on your knowledge. A project incubated by Y Combinator W24, with active code updates.
What problem it solves: ChatGPT doesn't know what's in your notes. Khoj does.
After you sync in Markdown notes, PDFs and web pages, Khoj builds a vectorized index of the content. Later, if you ask "which databases were mentioned in the technical plan I wrote last week," it can find the answer in your documents instead of making things up.
VPS spec recommendations:
- 2 cores 4GB can run it for validation
- For production use, 4 cores 4GB or higher is recommended
- Depends on PostgreSQL + pgvector + Terrarium (code execution sandbox) + SearXNG (search engine)
Note: the AGPL-3.0 license requires you to open-source your code if you modify it. If you only use it internally without modifying the code, that's fine. If you want to turn it into a SaaS and sell it to others, read the license requirements carefully.
Resource overhead: vectorized indexing eats memory; about 100,000 notes need roughly 2-3GB of memory for indexing. Add PostgreSQL and other components, and 4GB is a fairly realistic starting line.
GitHub: 39,700+ stars | Language: TypeScript | License: BSL-1.1
Outline is a team knowledge base/Wiki tool whose interface looks a lot like Notion. It supports Markdown editing, real-time collaboration, API integration and permission management.
What scenarios it suits:
- Internal team knowledge base
- Product documentation and technical documentation management
- Replacing Notion for internal notes
VPS spec recommendations:
- Runs on 2 cores 4GB
- Requires PostgreSQL + Redis + S3-compatible storage (MinIO or Cloudflare R2)
- Requires an OAuth provider (Google, GitHub, Slack, etc.); you can't log in with just email and password
Pitfall: the BSL-1.1 license is not a traditional open-source license. Simply put, you can do whatever you want for your own use, but you can't use it to sell a competing SaaS. If it's only deployed internally in a company, you're not affected.
OAuth is a barrier: Outline mandates OAuth login, so you first need a Google Workspace, a GitHub Org, or to set up Keycloak yourself. For purely personal use, this design is a bit redundant.
GitHub: 17,100+ stars | Language: Rust + TypeScript | License: AGPLv3
Windmill is a developer platform that lets you write scripts in Python/TypeScript/Go, then use a drag-and-drop interface to chain those scripts into workflows, internal tools and scheduled tasks.
The difference from n8n/ActivePieces: Windmill is code-first at its core. What you write are real scripts, not logic blocks stitched together by dragging. It suits development teams.
VPS spec recommendations:
- Starts at 4 cores 4GB (the official recommendation, and it really is needed in practice)
- Depends on PostgreSQL
- Comes with Caddy as a reverse proxy
- If you want to run Docker-in-Docker (letting workflows spin up their own containers), resource requirements are higher
Scary release cadence: Windmill already has 1400+ releases on GitHub, which shows a very high update frequency. The upside is bugs get fixed fast; the downside is you have to keep up with versions often, or compatibility issues easily arise.
How to choose versus n8n: if your team is mainly developers, Windmill is more suitable — writing code is more flexible than dragging. If the team is mostly non-technical, the drag-and-drop experience of n8n/ActivePieces is better.
GitHub: 54,700+ stars | Language: TypeScript + Python | License: AGPL-3.0
Plane is an open-source alternative to Jira/Linear. It supports kanban boards, sprint management, bug tracking, Cycles (iterations) and module division. The interface is very modern, and it grew fast in 2026.
VPS spec recommendations:
- Starts at 4 cores 8GB; this is the most resource-hungry non-GPU option among all the recommended projects
- Docker Compose needs to start about 13 services: PostgreSQL, Redis, RabbitMQ, MinIO (object storage), etc.
- Many components, so troubleshooting is relatively troublesome
Measured resource overhead: with 13 containers running at once, idle state eats 3-4GB of memory. Add the disk I/O of PostgreSQL and RabbitMQ, and NVMe disks are recommended.
When to use Plane: teams of 5 or more that need a formal project management process. If you're just one person or two or three people, GitHub Issues + Projects is enough, and there's no need to bother with Plane.
GitHub: 65,000+ stars | Language: Python | License: GPL-3.0
ComfyUI is a node-based Stable Diffusion workflow editor. It's much more flexible than Automatic1111 WebUI and lets you precisely control each step of the generation process.
But there's a big prerequisite: you need a GPU.
CPU mode can run too, but one image takes 5-10 minutes, which is basically unusable. To do AI image generation, the VPS needs at least a GPU with 8GB of VRAM (NVIDIA T4, RTX 3060/4060 level).
VPS spec recommendations:
- CPU-only: theoretically it can run, but not recommended, too slow
- GPU VPS: 4 cores 8GB + NVIDIA T4 (16GB VRAM), monthly fee usually $50-150
- Docker deployment is supported, but GPU passthrough configuration is fairly troublesome
Cost reminder: GPU VPS is 3-5 times more expensive than a regular VPS. If you don't use it every day, renting on demand is more cost-effective than a monthly plan. Vultr and Lambda Labs have hourly-billed GPU instances.
Alternative: if you only occasionally use AI image generation, calling the Midjourney or DALL-E API saves money compared with self-hosting. ComfyUI's advantage is being fully local, uncensored, and able to run custom models.
The 8 projects above fall into three tiers by VPS specs:
Suits: LibreChat, ActivePieces
This spec runs one project — LibreChat or ActivePieces — fine, but don't run two at the same time. The system itself takes 500MB, and the rest goes to the app and database.
Suits: Khoj, Outline, Windmill, PocketBase (multiple projects)
This spec is the sweet spot for self-hosted AI projects. 4GB can run one main app + PostgreSQL + Redis at the same time, and 8GB can add a vector database.
Suits: Plane, multiple projects coexisting
Those 13 containers of Plane eating resources is no joke. 4 cores 8GB is the bottom line; NVMe disks are recommended.
The MIT license (LibreChat, ActivePieces, PocketBase) is the most permissive; both personal and commercial use are fine.
AGPL-3.0 (Khoj, Plane, Windmill) requires you to open-source your code if you modify it. Personal use is fine; be careful with SaaS.
BSL-1.1 (Outline) restricts you from making a competing product. Internal company deployment is not affected.
GPL-3.0 (ComfyUI) requires derivative works to be open-source too.
If unsure, choose MIT-licensed projects first.
Self-hosting means all data lives on your VPS. If the VPS disk fails, gets compromised, or you delete something by mistake, the data is gone.
At minimum do this:
- Automatically back up the database every day to another machine or object storage
- Regularly export Docker Volumes
- Keep important config files (.env, compose.yaml) in Git
The ports of the projects above should not be exposed directly to the public internet:
- Qdrant 6333 → bind to 127.0.0.1, use Caddy as a reverse proxy
- PocketBase 8090 → bind to 127.0.0.1, go through HTTPS
- MongoDB, PostgreSQL → allow local connections only
Exposing services via Cloudflare Tunnel or an Nginx reverse proxy is much safer than opening ports directly.
It depends on the specific projects. LibreChat + ActivePieces is worth a try, since neither uses much resources. But forget about Khoj + Plane, there isn't enough memory.
Run one first, watch actual memory usage with docker stats, and only consider adding a second once it's confirmed stable.
It's recommended. Without a domain you can still access them directly by IP, but HTTPS certificates require a domain. Let's Encrypt doesn't issue certificates for bare IPs.
You can use a free Freenom domain or Cloudflare's free domain for testing. For production use, buy a proper domain.
If you use cloud model APIs like OpenAI/Claude, your prompts and documents are sent to their servers. That's no different from using ChatGPT.
If you care about data privacy, run open-source models locally with Ollama (Llama 3, Qwen 2.5, etc.), and the data never leaves your VPS. But local models usually perform noticeably worse than cloud models, so it depends on whether your scenario can accept that.
This is an old VPS problem. Cheap first order and doubled renewal are very common. Prepare for migration in advance.
- PocketBase docs: https://pocketbase.io/docs/
- LibreChat docs: https://www.librechat.ai/docs
- ActivePieces docs: https://www.activepieces.com/docs
- Khoj docs: https://docs.khoj.dev/
- Outline docs: https://docs.getoutline.com/
- Windmill docs: https://windmill.dev/docs
- Plane docs: https://developers.plane.so/
- ComfyUI GitHub: https://github.com/comfyanonymous/ComfyUI