Stack Sizer

Size a self-hosted stack from official sources.

Apps

Pick one or more apps. Only published profiles can be sized.

Load and options

LibreChat

v1.0.0
Load

Up to 50 users, up to 500 stored messages a day (prompts + replies), up to 0.5 GB of documents uploaded for file search; one year of history.

Options

No options change this app's resources.

Recommended resources

App requirements + system baseline + safety headroom. Nothing else is added, and nothing is rounded to a machine size.

vCPU 5.52, RAM 9 GiB, Disk 34.422 GiB

vCPU5.52
RAM9GiB
Disk34.422GiB
Breakdown
LineFromvCPURAM (GiB)Disk (GiB)Sources
LibreChatLibreChat (API and web client) · Medium load1.524.49912345
LibreChatMongoDB · Medium load0.511.863675
LibreChatMeilisearch · Medium load0.50.756.52289105
LibreChatPostgreSQL with pgvector · Medium load116.5111213141516171819202122
LibreChatrag_api (lite) · Medium load11.52.048232120245
System baselineOperating system, Container runtime (Docker Engine, containerd), System logs (journald), plus logs for 5 containers0.11.258.5252627282930
Safety headroomvCPU 20%, RAM 20%, disk 15% of apps + baseline0.921.54.493126322933
Recommended total5.52934.422
Sources
  1. LibreChat docs: deployment overview, minimum requirements 1 GiB RAM and 1 vCPU, 2 GB RAM suggested with everything enabled (LibreChat, read 14 Oct 2026)
  2. LibreChat v0.8.8 Dockerfile: node:24.16.0-alpine, USER node, creates /app/client/public/images, /app/logs, /app/uploads, /app/data, EXPOSE 3080, CMD npm run backend (LibreChat, read 14 Oct 2026)
  3. GHCR librechat-ai/librechat:v0.8.8 (linux/amd64): 988,662,027 B compressed, 2,804,835,840 B decompressed and counted; config User node, no Healthcheck; layers contain usr/bin/wget (LibreChat, read 14 Oct 2026)
  4. LibreChat v0.8.8 data-schemas winston config: log files on by default, daily rotation, maxSize 20m, maxFiles 14d (LibreChat, read 14 Oct 2026)
  5. Docker: containerd image store is the default on fresh Engine 29+ installs and keeps images compressed and uncompressed (LibreChat, read 10 Oct 2026)
  6. MongoDB manual: WiredTiger cache defaults to the larger of 50% of (RAM - 1 GB) or 256 MB; set --wiredTigerCacheSizeGB when the container cannot use all host RAM (LibreChat, read 14 Oct 2026)
  7. Docker Hub tag mongo:8.0.20 (linux/amd64): 312,915,385 B compressed; layers decompressed and counted: 957,032,960 B (LibreChat, read 14 Oct 2026)
  8. Meilisearch: Storage (LMDB never returns freed space; 9.1 MB JSON gave 224 MB on disk and ~305 MB RAM; RAM-to-disk 1/3, often 1/10, works well) (LibreChat, read 14 Oct 2026)
  9. Docker Hub tag getmeili/meilisearch:v1.35.1 (linux/amd64): 105,981,256 B compressed; layers decompressed and counted: 157,731,328 B (LibreChat, read 14 Oct 2026)
  10. LibreChat docs: Meilisearch (SEARCH=true plus a master key of 16+ bytes shared with the meilisearch service; keep port 7700 internal; reset-meili-sync) (LibreChat, read 14 Oct 2026)
  11. PostgreSQL 18 documentation: 19.4 Resource Consumption (LibreChat, read 10 Oct 2026)
  12. PostgreSQL 18 documentation: 19.3 Connections and Authentication (LibreChat, read 10 Oct 2026)
  13. PostgreSQL 18 documentation: 19.10 Vacuuming (autovacuum settings) (LibreChat, read 10 Oct 2026)
  14. PostgreSQL 18 documentation: 19.5 Write Ahead Log (max_wal_size) (LibreChat, read 10 Oct 2026)
  15. PostgreSQL 18 documentation: 51.2 How Connections Are Established (LibreChat, read 10 Oct 2026)
  16. Docker Official Image postgres: documentation (docker-library/docs) (LibreChat, read 10 Oct 2026)
  17. Docker Hub: library/postgres tag 18.6 (compressed image sizes) (LibreChat, read 10 Oct 2026)
  18. Docker Hub tag pgvector/pgvector:0.8.0-pg15-trixie (linux/amd64): 159,295,182 B compressed (152 MiB); layers decompressed and counted: 455,663,616 B (LibreChat, read 14 Oct 2026)
  19. pgvector v0.8.0 README: each vector takes 4 × dimensions + 8 bytes (LibreChat, read 14 Oct 2026)
  20. OpenAI embeddings guide: text-embedding-3-small returns 1536-dimensional vectors (LibreChat, read 14 Oct 2026)
  21. rag_api v0.9.0 app/config.py: RAG_PORT 8000, DB_HOST/DB_PORT/POSTGRES_* settings, RAG_OPENAI_API_KEY falls back to OPENAI_API_KEY, text-embedding-3-small, CHUNK_SIZE 1500, CHUNK_OVERLAP 100 (LibreChat, read 14 Oct 2026)
  22. LibreChat v0.8.8 docker-compose.yml: api on 3080 (librechat-data at /app/data), mongo:8.0.20 --noauth, meilisearch v1.35.1, pgvector 0.8.0-pg15-trixie, rag_api lite, admin-panel (LibreChat, read 14 Oct 2026)
  23. rag_api v0.9.0 README: EMBEDDING_BATCH_SIZE 500, EMBEDDING_MAX_QUEUE_SIZE 3, PARALLEL_EXECUTION 2 per upload; memory ≈ batch × (queue + parallel); smaller batches below 2 GB RAM (LibreChat, read 14 Oct 2026)
  24. GHCR manifest of librechat-ai/librechat-rag-api-dev-lite:v0.9.0 (linux/amd64): 539,995,713 B compressed; layers decompressed and counted: 1,659,485,184 B (LibreChat, read 14 Oct 2026)
  25. Ubuntu Server: System requirements (Sizing policy, read 10 Oct 2026)
  26. Google Kubernetes Engine: About GKE node sizing (Sizing policy, read 10 Oct 2026)
  27. ANAROQ measurement: dockerd and containerd at rest (Ubuntu 24.04, Docker 29.8.2) (Sizing policy, read 10 Oct 2026)
  28. Docker Community Forums: Docker resource usage & overhead (Sizing policy, read 10 Oct 2026)
  29. journald.conf(5), Ubuntu Manpages (Sizing policy, read 10 Oct 2026)
  30. Docker Docs: Local file logging driver (Sizing policy, read 10 Oct 2026)
  31. AWS Compute Optimizer: Rightsizing recommendation preferences (Sizing policy, read 10 Oct 2026)
  32. Kubernetes: Node-pressure Eviction (Sizing policy, read 10 Oct 2026)
  33. mke2fs(8), Ubuntu Manpages (Sizing policy, read 10 Oct 2026)
Basis
Catalog release
2026.10.10
Sizing policy
2026.10.0
Profile LibreChat
1.0.0

How the numbers are built

Deployment Spec

Turn this result into a link you can keep or share. Everything is in the link; nothing is sent to us.

A short lowercase image id, for example ubuntu-24.04.