rushdb
FeaturesUse casesPricingBlogDocsGitHub
Sign InStart free

Agent memory

Agents that remember, and can show where a memory came from.

Company brain & RAG

Answers that span your docs, CRM, support, billing and code, with the record behind every fact.

AI search & assistants

Search and assistants on the records your app already writes.

Analytics

Questions about your data, answered by a read-only query you can inspect.

All use cases →
rushdb

The open-source database for AI. Store any data; your agents always know what’s in it.

GitHubDiscord

Product

FeaturesQuery languagesPricing and CloudSecurity

Use cases

Agent memoryCompany brain & RAGAI search & assistantsAnalytics

Developers

DocsQuick tutorialSelf-hostingTutorialsEngine manualSDKsMCP serverAgent skills

Resources

BlogGuidesComparisonsChangelogllms.txtGitHubContact
PrivacyTermsCookies

Self-Hosted RushDB: Quick Setup

Learn how to run RushDB in self-hosted mode using Docker with either Neo4j Aura or a local container.

Author
RushDB Team
Category
Engineering
Published
Feb 22, 2025
Reading time
6 min
Contents
  1. └Introduction
  2. └Key Features
  3. └Article Overview
  4. └Before You Begin
  5. └Self-Hosted with Neo4j Aura
  6. └Steps to set up:
  7. └Local Neo4j Container
  8. └Conclusion
  9. └Useful Links

Contents

  1. └Introduction
  2. └Key Features
  3. └Article Overview
  4. └Before You Begin
  5. └Self-Hosted with Neo4j Aura
  6. └Steps to set up:
  7. └Local Neo4j Container
  8. └Conclusion
  9. └Useful Links
░░░░░░░░░░░░░░░░░░░░░░░░00%

6 min read

Topics

  • database
  • graph database
  • neo4j
  • NoSQL
  • developer tools
  • docker
  • instant database
  • docker-compose

Share

  • X.com
  • LinkedIn

Introduction

RushDB is an instant database that lets you work with any data structure without creating a schema first. You can push any data, and RushDB will automatically connect records, detect data types, and provide high-performance search. You can also create or manage relationships manually for more control.

RushDB helps you focus on your application logic without worrying about a complex schema or table design.


Key Features

  • Zero Configuration – Just push any JSON or CSV; RushDB automatically suggests types, normalizes data, and labels relationships - all on the fly.
  • Graph-Powered Storage – Automatically structures relationships between data.
  • ACID Transactions – Ensures consistency and reliability.
  • Powerful Yet Simple Querying – RushDB eliminates the gap between how you perceive data and how you query it, making data retrieval frictionless and natural - so you can focus on shipping products, not syntax.
  • Self-Hosted or Cloud – Deploy anywhere with ease, or choose RushDB Cloud. Start building in under 30 seconds.
  • SDK-like DX Even for REST API – Enjoy a seamless developer experience with an intuitive, structured API that feels like an SDK, minimizing boilerplate and complexity.

Article Overview

This article explains how to get started with RushDB. We will show two main ways to connect:

  • Cloud: The quickest method to start using RushDB. Ideal for trying out small projects or prototypes.
  • Self-Hosted: Gives you more control and is suitable for production environments.

If you want to explore the Cloud option, follow a few steps in the official docs. This guide will focus on the Self-Hosted setup.

Before You Begin

To run RushDB in Self-Hosted mode, we recommend using Docker. Docker helps you avoid manual installations or OS-related issues.

  1. Make sure Docker is installed
  • For Windows or macOS, download Docker Desktop.
  • For Linux, follow these instructions.
  1. Verify Docker installation
  • Run docker --version in your terminal to confirm Docker is working.
Shell
$ docker --version
Docker version 27.3.1, build ce12230

Self-Hosted with Neo4j Aura

RushDB stores data in Neo4j. One simple option is Neo4j Aura, the cloud version of Neo4j. It has a free tier for small use.

Steps to set up:

  1. Register an account on Neo4j Aura
    Go to Neo4j Aura and create a free instance.
    For more details, see Neo4j Aura docs or this Medium article.

  2. Get your Neo4j credentials

  • After creating your Aura instance, note the username, and password. Neo4j Aura Instance username & password

  • After you download the credentials, the instance will be mounted, and you can copy instance URI or find it in the downloaded credentials from previous step: Neo4j instance url

  1. Run RushDB in Docker
    Replace the sample values with your credentials:

    Shell
    docker run -p 3000:3000 \
      --name rushdb \
      -e NEO4J_URL='neo4j+s://1234567.databases.neo4j.io' \
      -e NEO4J_USERNAME='neo4j' \
      -e NEO4J_PASSWORD='password' \
      rushdb/platform

    NEO4J_URL, NEO4J_USERNAME, and NEO4J_PASSWORD must match your Aura instance settings.

    After installation, if you're using Docker Desktop, you can see installed container here: RushDB Container

    You also can run some RushDB CLI commands inside docker container.
    Learn more in the docs

  2. Access RushDB

  • RushDB will be available at http://localhost:3000.
  • Go there to open the RushDB Dashboard.
  1. Create a project and get an API token
  • In the Dashboard, make a new user, and a new project.
  • Copy the generated API token for later use.
    Learn more in the docs
  1. Use the token in your code
    Below is an example using Python and JavaScript/TypeScript SDKs.
from rushdb import RushDB

db = RushDB(
   "RUSHDB_API_TOKEN",
   base_url="http://localhost:3000"
)

db.records.create_many(
   "COMPANY",
   {
      "name": "Google LLC",
      "address": "1600 Amphitheatre Parkway, Mountain View, CA 94043, USA",
      "foundedAt": "1998-09-04T00:00:00.000Z",
      "rating": 4.9,
      "DEPARTMENT": [
         {
            "name": "Research & Development",
            "description": "Innovating advanced technologies for AI and cloud computing.",
            "PROJECT": [
               {
                  "name": "Bard AI",
                  "description": "A cutting-edge model for language understanding.",
                  "active": True,
                  "budget": 1200000000,
                  "EMPLOYEE": [
                     {
                        "name": "Jeff Dean",
                        "position": "Head of AI Research",
                        "email": "jeff@google.com",
                        "salary": 3000000
                     }
                  ]
               }
            ]
         }
      ]
   }
)

Local Neo4j Container

If you do not want to use Neo4j Aura, you can launch Neo4j locally:

  1. Create a Docker network (optional, for easy linking):
Shell
docker network create rushdb-service
  1. Start Neo4j:
Shell
docker run -d --name neo4j \
  --network rushdb-service \
  -p 7474:7474 \
  -p 7687:7687 \
  -e NEO4J_ACCEPT_LICENSE_AGREEMENT=yes \
  -e NEO4J_AUTH=neo4j/password \
  -e NEO4J_PLUGINS='["apoc"]' \
  --health-cmd="wget --no-verbose --tries=1 --spider localhost:7474 || exit 1" \
  --health-interval=5s \
  --health-retries=30 \
  --health-start-period=10s \
  neo4j:5.25.1
  1. Run RushDB:
Shell
docker run -d --name rushdb \
  --network rushdb-service \
  -p 3000:3000 \
  -e NEO4J_URL=bolt://neo4j \
  -e NEO4J_USERNAME=neo4j \
  -e NEO4J_PASSWORD=password \
  rushdb/platform
  1. Docker Compose (recommended)\
  • You can use a docker-compose.yml file to run both Neo4j and RushDB together:
YAML
version: '3.8'
services:
  rushdb:
    image: rushdb/platform
    container_name: rushdb
    depends_on:
      neo4j:
        condition: service_healthy
    ports:
      - "3000:3000"
    environment:
      - NEO4J_URL=bolt://neo4j
      - NEO4J_USERNAME=neo4j
      - NEO4J_PASSWORD=password
  neo4j:
    image: neo4j:5.25.1
    healthcheck:
      test: [ "CMD-SHELL", "wget --no-verbose --tries=1 --spider localhost:7474 || exit 1" ]
      interval: 5s
      retries: 30
      start_period: 10s
    ports:
      - "7474:7474"
      - "7687:7687"
    environment:
      - NEO4J_ACCEPT_LICENSE_AGREEMENT=yes
      - NEO4J_AUTH=neo4j/password
      - NEO4J_PLUGINS=["apoc"]
  • Then start everything with:
Shell
docker-compose up -d
  1. Check RushDB Dashboard:
  • By default, RushDB is on http://localhost:3000.
  • You can create a project, generate a token, and use it the same way as before.

Learn more how to set up Docker Compose

Conclusion

In this article, we learned how to run RushDB Self-Hosted in two ways:

  • With Neo4j Aura (a hosted cloud database with a free tier)
  • With a local Neo4j container (complete control in your environment)

Self-hosting is useful for full-scale projects and production scenarios. You have more flexibility and can customize your environment. For smaller or hobby projects, you can try RushDB Cloud, which is the fastest way to start with RushDB without managing Neo4j yourself.

Useful Links

  • Official RushDB Documentation
  • Neo4j Aura Free Tier
  • Docker Setup and Installation
  • Docker Compose Documentation
  • RushDB GitHub Issues

RushDB

Precision your agents can query.

RushDB is a self-describing, graph-native database that helps AI agents reason over data with confidence: progressively introspect what's queryable—without guesswork.

Start free →

Related reading

  1. Feb 17, 2025Introducing RushDB: Zero-Config Instant Database for Modern Apps & AI Era12 min
  2. Aug 19, 2026Vector RAG vs GraphRAG vs Agentic RAG: Why There Is No Winner28 min
  3. Jul 21, 2026Vector Search Doesn't Understand Data Structure15 min