Deployment Overview

What You Have

One Package: ai-nexus.deb

What's Inside the Package:

  • RAG API application

  • MCP Server application

  • Both applications bundled together

What You Need to Deploy

1. The Application Package (ai-nexus.deb)

This contains your RAG API and MCP Server applications.

2. A Database (MariaDB)

The applications need a database to store documents and vector embeddings.

3. Configuration (Secret Management Mode)

You need to choose HOW to provide secrets (API keys, passwords) to the applications.


Two Deployment Options

Option A: Deploy on Ubuntu (Native) ✅ SIMPLER

What happens: Install the .deb package directly on Ubuntu

Steps:

  1. Install MariaDB on Ubuntu

  2. Install ai-nexus.deb on Ubuntu

  3. Configure secrets (choose a mode)

  4. Start services

Guide: UBUNTU_DEPLOYMENT_GUIDE.md


Option B: Deploy with Docker (on Windows) 🐳

What happens: Package everything in Docker containers

Steps:

  1. Build Docker image (wraps the .deb package)

  2. Start containers with docker-compose

  3. Configure secrets (choose a mode)

Guide: DOCKER_DEPLOYMENT_GUIDE.md


Secret Management Modes (Works with BOTH Options)

After you deploy the application (Ubuntu or Docker), you choose ONE mode:

Mode 1: Standalone (Simplest) ⭐

How it works: Secrets stored in a plain text config file

Config File Location:

  • Ubuntu: /opt/rag-in-a-box/config/config.env.template

  • Docker: config.env.secure.local

Example:

How to generate secure keys:

When to use: Development, testing, single developer


Mode 2: Local Vault (Production-Like) 🔐

How it works: Secrets stored in HashiCorp Vault (running locally)

Architecture:

Config File Location:

  • Ubuntu: /opt/rag-in-a-box/config/config.env.template

  • Docker: config.env.vault.local

Example:

When to use: Team development, production-like testing


Mode 3: 1Password (Enterprise) 🔑

How it works: Secrets stored in 1Password vault

Architecture:

Config File:

When to use: Enterprise with 1Password subscription


Mode 4: HCP Vault (Production Cloud) ☁️

How it works: Secrets stored in HashiCorp Cloud Platform

Architecture:

When to use: Production cloud deployments


Complete Deployment Flow

Scenario 1: Ubuntu Native + Standalone Mode


Scenario 2: Ubuntu Native + Vault Mode


Scenario 3: Docker + Standalone Mode


Scenario 4: Docker + Vault Mode


Key Points to Understand

1. The Package is the Same

The ai-nexus.deb package is identical regardless of:

  • Where you deploy it (Ubuntu or Docker)

  • Which secret mode you use (Standalone, Vault, 1Password, HCP)

2. Deployment Location is Independent of Secret Mode

You can use ANY secret mode with ANY deployment location:

  • Ubuntu + Standalone ✅

  • Ubuntu + Vault ✅

  • Ubuntu + 1Password ✅

  • Docker + Standalone ✅

  • Docker + Vault ✅

  • Docker + 1Password ✅

3. The Application Decides at Startup

When RAG API and MCP Server start, they:

  1. Read the config file

  2. Check which mode is configured

  3. Fetch secrets accordingly:

    • Standalone: Read from config file directly

    • Vault: Connect to Vault and fetch

    • 1Password: Use 1Password CLI to fetch

    • HCP: Connect to HCP Vault and fetch


Which Guide to Use?

I want to deploy on Ubuntu (no Docker)

→ Use: UBUNTU_DEPLOYMENT_GUIDE.md

Then choose secret mode:

  • Standalone: Edit /opt/rag-in-a-box/config/config.env.template with actual secrets

  • Vault: Install Vault, store secrets, configure Vault connection in config

  • 1Password: Install 1Password CLI, configure 1Password references in config


I want to deploy with Docker (on Windows)

→ Use: DOCKER_DEPLOYMENT_GUIDE.md

Then choose secret mode:

  • Standalone: Edit config.env.secure.local with actual secrets

  • Vault: Run Vault container, store secrets, use config.env.vault.local

  • 1Password: Install 1Password CLI, use config.env.1password.employee


Quick Decision Tree


Example: Complete Ubuntu Deployment (Standalone)


Example: Complete Ubuntu Deployment (Vault)


Summary

One Package (ai-nexus.deb) contains RAG API + MCP Server

Two Deployment Options:

  1. Ubuntu Native (install .deb directly)

  2. Docker (wrap .deb in container)

Four Secret Modes (choose one):

  1. Standalone (secrets in config file)

  2. Local Vault (secrets in local Vault)

  3. 1Password (secrets in 1Password)

  4. HCP Vault (secrets in cloud Vault)

The application is the same - only the deployment location and secret source change.


Which Documentation to Read?

Your Situation
Read This

Have Ubuntu, want simplest setup

Have Ubuntu, want Vault

Have Windows, want Docker

Have Windows, want Docker + Vault

Need to understand architecture

Need step-by-step checklist


Is this clearer now? The key insight is:

  • Same package everywhere

  • Choose where to deploy (Ubuntu or Docker)

  • Choose how to manage secrets (Standalone/Vault/1Password/HCP)

This page is: Copyright © 2025 MariaDB. All rights reserved.

Last updated

Was this helpful?