From 968d29b9b26c369ab4b31233fe546d796e15b7b7 Mon Sep 17 00:00:00 2001 From: Sabiha Khan Date: Tue, 30 Sep 2025 09:43:16 +0530 Subject: [PATCH] chore: update README --- .gitignore | 1 - README.md | 101 ++++------------------------------------ docs/prerequisites.md | 64 +++++++++++++++++++++++++ docs/troubleshooting.md | 45 ++++++++++++++++++ 4 files changed, 118 insertions(+), 93 deletions(-) create mode 100644 docs/prerequisites.md create mode 100644 docs/troubleshooting.md diff --git a/.gitignore b/.gitignore index 410cc1c..7663dd6 100644 --- a/.gitignore +++ b/.gitignore @@ -5,6 +5,5 @@ __pycache__ # logs and run directory on production /logs/ /run/ -docs/ infrastructure/ nginx/ diff --git a/README.md b/README.md index d99b909..f81dbcf 100644 --- a/README.md +++ b/README.md @@ -18,9 +18,10 @@

-The fastest way to build voice bots - get started with any voice AI use case in under 2 minutes (our hard SLA standards). -Build voice agents in just one line or drag-and-drop, then test them using AI personas that mimic real customer calls. It's 100% open source, self-hosted if you want, and never hides a line of code- ever. The project has a strong commitment to **100% open source** and every line of code is released in the open. -Maintained by YC alumni and exit founders, we're making sure the future of voice AI stays open, not monopolized. +Dograh helps you build your own voice agents with an easy drag-and-drop workflow builder. It's the fastest way to build voice AI agents - from zero to working bot in under 2 minutes (our hard SLA standards). + +- **100% open source**, self-hostable platform with built-in AI testing personas and flexible LLM/TTS/STT integration +- **Maintained by YC alumni and exit founders**, ensuring the future of voice AI stays open, not monopolized ## 🎥 Demo Video @@ -34,16 +35,19 @@ Maintained by YC alumni and exit founders, we're making sure the future of voice ## 🚀 Get Started +### Prerequisites +Before you begin, make sure you have the requirements installed. See 📋 **[Prerequisites](dograh/docs/prerequisites.md)** for system requirements and port availability. + The only command you need to run: -##### Download and start Dograh +##### Download and setup Dograh on your local machine ```bash curl -o docker-compose.yaml https://raw.githubusercontent.com/dograh-hq/dograh/main/docker-compose.yaml && REGISTRY=ghcr.io/dograh-hq docker compose up ``` > **Note** > First startup may take 2-3 minutes to download all images. Once running, open http://localhost:3010 to create your first AI voice assistant! -> For prerequisites, port issues, or troubleshooting, see the [Prerequisites and Troubleshooting](#-prerequisites-and-troubleshooting) section below. +> For common issues and solutions, see 🔧 **[Troubleshooting](dograh/docs/troubleshooting.md)**. ### 🎙️ Your First Voice Bot @@ -83,93 +87,6 @@ curl -o docker-compose.yaml https://raw.githubusercontent.com/dograh-hq/dograh/m - Workflow Testing: Test specific workflow IDs with automated calls - Real-world Simulation: AI personas that mimic actual customer behavior -## 🔧 Prerequisites and Troubleshooting - -### Prerequisites - -To run Dograh AI locally, make sure you have the following installed: - -- [Docker](https://docs.docker.com/get-docker/) (version 20.10 or later) -- [curl](https://curl.se/download.html) – usually preinstalled on macOS/Linux - -> **Note** -> Docker Compose is included with Docker Desktop. Make sure Docker is running before you begin. - -### Required Ports - -Ensure these ports are available: -- `3010` - Web UI -- `8000` - API Server -- `5432` - PostgreSQL -- `6379` - Redis -- `9000` - MinIO (S3-compatible storage) -- `9001` - MinIO Console - -### Checking Port Availability - -##### Check if a port is in use (replace 3010 with the port number) -```bash -lsof -i :3010 -``` - -### Freeing Up Ports - -#### When a port is already in use: -##### Check what's using the port first and then kill the process (may require sudo on Linux) -```bash -lsof -i :3010 - -kill -9 $(lsof -t -i :3010) -``` - -#### When Docker containers are using the ports (with auto-restart enabled): - -**Step 1:** Stop all running containers -```bash -docker stop $(docker ps -q) -``` - -**Step 2:** Disable restart policy for all containers -This prevents containers from automatically restarting: -```bash -docker update --restart=no $(docker ps -a -q) -``` - -**Step 3:** Verify - -Check that no containers are running: -```bash -docker ps -``` - -Check restart policies (should show 'no' for each container): -```bash -docker inspect -f '{{.Name}} - {{.HostConfig.RestartPolicy.Name}}' $(docker ps -a -q) -``` - -### Docker Registry Options - -Dograh images are available from two registries that you can choose from: - -- **GitHub Container Registry (Default)**: `ghcr.io/dograh-hq` - Recommended for most users -- **Docker Hub**: `dograhai` - Alternative registry - -To use a specific registry, set the `REGISTRY` environment variable using either of the following: - -##### Using GitHub Container Registry (recommended) or Docker Hub -```bash -REGISTRY=ghcr.io/dograh-hq docker compose up - -REGISTRY=dograhai docker compose up -``` - -### Stopping Dograh Services -##### Stop services or Stop and remove all data (full cleanup) -```bash -docker compose down - -docker compose down -v -``` ## Configuration Dograh automatically generates API keys on first run, but you can use your own keys. diff --git a/docs/prerequisites.md b/docs/prerequisites.md new file mode 100644 index 0000000..b26beb1 --- /dev/null +++ b/docs/prerequisites.md @@ -0,0 +1,64 @@ +# Prerequisites + +## System Requirements + +### Minimum Requirements +- **RAM**: 8 GB (4 GB available for Docker) +- **Storage**: 10 GB free disk space +- **CPU**: 2 cores (x86_64 or ARM64) +- **OS**: + - macOS 10.15+ (Catalina or newer)\ + - Windows 10/11 with WSL2 + - Linux with kernel 3.10+ + +## Software Requirements + +To run Dograh AI locally, make sure you have the following installed: + +- [Docker](https://docs.docker.com/get-docker/) (version 20.10 or later) +- [curl](https://curl.se/download.html)  usually preinstalled on macOS/Linux + +> **Note** +> Docker Compose is included with Docker Desktop. Make sure Docker is running before you begin. + +### Docker Resource Allocation +For Docker Desktop users, ensure Docker has adequate resources: +1. Open Docker Desktop settings +2. Navigate to Resources +3. Allocate at least: + - Memory: 4 GB (8 GB recommended) + - CPUs: 2 (4 recommended) + - Disk: 10 GB + +## Required Ports + +Ensure these ports are available: +- `3010` - Web UI +- `8000` - API Server +- `5432` - PostgreSQL +- `6379` - Redis +- `9000` - MinIO (S3-compatible storage) +- `9001` - MinIO Console + +## Checking Port Availability + +##### Check if a port is in use (replace 3010 with the port number) +```bash +lsof -i :3010 +``` + +## Docker Registry Options + +Dograh images are available from two registries that you can choose from: + +- **GitHub Container Registry (Default)**: `ghcr.io/dograh-hq` - Recommended for most users +- **Docker Hub**: `dograhai` - Alternative registry + +To use a specific registry, set the `REGISTRY` environment variable using either of the following: + +##### Using GitHub Container Registry (recommended) or Docker Hub +```bash +REGISTRY=ghcr.io/dograh-hq docker compose up + +REGISTRY=dograhai docker compose up +``` \ No newline at end of file diff --git a/docs/troubleshooting.md b/docs/troubleshooting.md new file mode 100644 index 0000000..8c19cb6 --- /dev/null +++ b/docs/troubleshooting.md @@ -0,0 +1,45 @@ +# Troubleshooting + +## Freeing Up Ports + +### When a port is already in use: +##### Check what's using the port first and then kill the process (may require sudo on Linux) +```bash +lsof -i :3010 + +kill -9 $(lsof -t -i :3010) +``` + +### When Docker containers are using the ports (with auto-restart enabled): + +**Step 1:** Stop all running containers +```bash +docker stop $(docker ps -q) +``` + +**Step 2:** Disable restart policy for all containers +This prevents containers from automatically restarting: +```bash +docker update --restart=no $(docker ps -a -q) +``` + +**Step 3:** Verify + +Check that no containers are running: +```bash +docker ps +``` + +Check restart policies (should show 'no' for each container): +```bash +docker inspect -f '{{.Name}} - {{.HostConfig.RestartPolicy.Name}}' $(docker ps -a -q) +``` + + +## Stopping Dograh Services +##### Stop services or Stop and remove all data (full cleanup) +```bash +docker compose down + +docker compose down -v +``` \ No newline at end of file