Installation
This guide will help you set up MeetBot for local development or production deployment.
Prerequisites
- Docker and Docker Compose (v2.0+)
- Node.js 18+ and pnpm (for frontend development)
- Python 3.11+ (for backend development)
Quick Start with Docker
The fastest way to get MeetBot running locally:
# Clone the repository
git clone https://github.com/syntrigen/meetbot.git
cd meetbot
# Start all services
docker-compose up -d
# Check status
docker-compose ps
This starts:
- PostgreSQL - Database (port 5432)
- MinIO - S3-compatible storage (port 9000, console: 9001)
- FastAPI Server - API backend (port 8000)
Service URLs
| Service | URL | Description |
|---|---|---|
| API Server | http://localhost:8000 | FastAPI backend |
| API Docs | http://localhost:8000/docs | Swagger UI |
| MinIO Console | http://localhost:9001 | Storage admin |
| Web App | http://localhost:3000 | Dashboard |
Environment Configuration
Create a .env file in the project root:
# Database
DATABASE_URL=postgresql://postgres:postgres@localhost:5432/meetbot
# Storage (MinIO)
AWS_ACCESS_KEY_ID=minioadmin
AWS_SECRET_ACCESS_KEY=minioadmin
AWS_BUCKET_NAME=meetbot-recordings
S3_ENDPOINT=http://localhost:9000
# JWT Secret (generate a secure random string)
JWT_SECRET_KEY=your-secret-key-here
# OAuth (optional)
GITHUB_CLIENT_ID=your-github-client-id
GITHUB_CLIENT_SECRET=your-github-client-secret
GOOGLE_CLIENT_ID=your-google-client-id
GOOGLE_CLIENT_SECRET=your-google-client-secret
Development Setup
Frontend (Web App)
# Install dependencies
pnpm install
# Start development server
pnpm dev
The web app will be available at http://localhost:3000.
Backend (FastAPI)
If you want to run the backend outside Docker:
cd apps/server
# Create virtual environment
python -m venv .venv
source .venv/bin/activate # On Windows: .venv\Scripts\activate
# Install dependencies
pip install -e .
# Run migrations
alembic upgrade head
# Start server
uvicorn app.main:app --reload --port 8000
Building Bot Images
MeetBot uses Docker containers for meeting bots. Build them with:
# Build all bot images
make build-bots
# Or build individually
make build-bot-meet # Google Meet bot
make build-bot-zoom # Zoom bot
make build-bot-teams # Microsoft Teams bot
Verify Installation
- Open http://localhost:8000/docs to see the API documentation
- Create a user account via the API or web app
- Generate an API key
- Create and deploy a test bot
# Test the API
curl http://localhost:8000/api/v1/health
Troubleshooting
Docker Issues
# Reset everything
docker-compose down -v
docker-compose up -d --build
Database Issues
# Connect to database
docker-compose exec postgres psql -U postgres -d meetbot
# Run migrations manually
docker-compose exec server alembic upgrade head
Port Conflicts
If ports are already in use, modify docker-compose.yml:
services:
server:
ports:
- "8001:8000" # Change external port
Next Steps
- Quick Start - Create your first bot
- Configuration - Advanced settings