logo
Self-Hosting Overview
Self-Hosting Overview

Self-Hosting Overview

This section of the Colanode documentation explains how to deploy and run Colanode in your own infrastructure.

Self-hosting gives you complete control over your data, configuration, and scaling strategy. You can run Colanode for yourself, your team, or your organization, using a simple single-server setup or a production-grade distributed deployment.

Colanode is cloud-agnostic and works with most major hosting providers, bare-metal servers, or even local development environments. It’s designed to be flexible, so you can choose the infrastructure and tools that best fit your needs.

Dependencies

To self-host Colanode, you need PostgreSQL, Redis or Valkey, and a storage backend for file storage.

Postgres

Colanode uses Postgres as its primary database to store structured information such as messages, documents, workspace metadata, user accounts, and permissions. Postgres can be hosted locally with Docker, installed directly on your servers, or provided by a managed cloud service like AWS RDS, Azure Database for Postgres, or Google Cloud SQL.

For Colanode’s AI-powered features, such as semantic search and embeddings, the database must have the pgvector extension enabled. This extension allows efficient storage and retrieval of vector embeddings generated by Colanode.

Redis or Valkey

An in-memory key-value store is required for caching, real-time event handling, and coordinating background tasks. Colanode supports both Redis and Valkey. These services can be deployed locally using Docker, installed directly on your servers, or hosted via a managed service such as AWS ElastiCache, Azure Cache for Redis, or Upstash.

Storage Backends

Colanode supports multiple storage backends for file storage. Choose the one that best fits your infrastructure:

File System Storage

Store files directly on the server’s filesystem. Best for:

  • Development and testing environments
  • Single-server deployments
  • Kubernetes with persistent volumes

S3-Compatible Storage

Store files in S3-compatible object storage. Best for:

  • Production deployments
  • Scalable, distributed systems
  • Cloud-native architectures

Supported providers:

  • AWS S3
  • MinIO (bundled with Docker and Kubernetes deployments)
  • Cloudflare R2
  • Backblaze B2
  • Any S3-compatible service

Google Cloud Storage (GCS)

Store files in Google Cloud Storage. Best for:

  • Google Cloud Platform deployments
  • Integration with GCP services
  • Using GCP’s global infrastructure

Azure Blob Storage

Store files in Azure Blob Storage. Best for:

  • Microsoft Azure deployments
  • Integration with Azure services
  • Azure-native architectures