Skip to content

Latest commit

 

History

History
203 lines (153 loc) · 5.64 KB

File metadata and controls

203 lines (153 loc) · 5.64 KB

🚀 Quick Start Guide

Note: This is the legacy quick start guide. For current setup instructions, see DEPLOYMENT.md.

Current Recommended Setup

Docker Deployment (Recommended)

# Clone repository
git clone <repository-url> simple-menu
cd simple-menu

# Basic deployment
docker compose -f docker/docker-compose.unified.yml up -d backend frontend

# With monitoring (recommended for production)
docker compose -f docker/docker-compose.unified.yml up -d backend frontend prometheus grafana node-exporter

# Full monitoring stack (high-resource environments)
docker compose -f docker/docker-compose.unified.yml up -d

Local Development

# Backend (from Backend/ directory)
npm install && npm start

# Frontend (from Frontend/front/ directory) 
npm install && npm start

Access:


Legacy Options (Deprecated)

Warning: The following startup scripts are deprecated. Use the Docker Compose commands above instead.

Windows (PowerShell) - Legacy

# Interactive menu (deprecated)
.\start.ps1

# Direct commands (deprecated)  
.\start.ps1 -Mode basic          # Basic setup only
.\start.ps1 -Mode prometheus     # With Prometheus + Grafana
.\start.ps1 -Mode elk           # With ELK Stack

Linux/macOS (Bash) - Legacy

# Interactive menu (deprecated)
./start.sh

# Direct commands (deprecated)
./start.sh basic          # Basic setup only
./start.sh prometheus     # With Prometheus + Grafana
./start.sh elk           # With ELK Stack

Deployment Modes

1. Basic Deployment

  • What: Just the Simple Menu application
  • Resources: ~200MB RAM
  • Command: docker compose -f docker/docker-compose.unified.yml up -d backend frontend
  • Access: http://localhost:3000
  • Best for: Minimal deployments, testing

2. Basic Monitoring (Recommended for Production)

  • What: Application + Prometheus + Grafana monitoring
  • Resources: ~512MB RAM additional
  • Command: docker compose -f docker/docker-compose.unified.yml up -d backend frontend prometheus grafana node-exporter
  • Access:
  • Best for: Production monitoring, Raspberry Pi

3. Full Monitoring Stack

Management Commands

# Check status
docker compose -f docker/docker-compose.unified.yml ps

# View logs
docker compose -f docker/docker-compose.unified.yml logs -f

# Stop services
docker compose -f docker/docker-compose.unified.yml down

# Update and restart
git pull && docker compose -f docker/docker-compose.unified.yml up --build -d

Related Documentation


Migration Notice

This legacy quick start guide is preserved for reference. New deployments should use:

  1. DEPLOYMENT.md for current setup instructions
  2. Docker Compose commands shown above for container deployment
  3. npm start commands for local development

The legacy startup scripts (start.ps1, start.sh, etc.) may be deprecated in future versions.

🔄 Cross-Platform

  • Windows PowerShell support
  • Linux/macOS Bash support
  • Consistent experience across platforms

Quick Examples

Start with monitoring (recommended):

# Windows
.\start.ps1 -Mode prometheus

# Linux/macOS
./start.sh prometheus

Interactive setup:

# Windows
.\start.ps1

# Linux/macOS  
./start.sh

Stop everything:

# Run the script and select option 4
.\start.ps1

Legacy Scripts

The following individual scripts are still available but the unified script is recommended:

  • start-monitoring-simple.ps1 → Use start.ps1 -Mode prometheus
  • start-monitoring-elk.ps1 → Use start.ps1 -Mode elk
  • docker-start.ps1 → Use start.ps1 -Mode basic

System Requirements

Setup Type RAM CPU Disk
Basic 512MB+ 1 core 2GB
Prometheus 1GB+ 2 cores 5GB
ELK Stack 4GB+ 4 cores 10GB

Troubleshooting

Docker not running

✗ Docker is not running or not installed

Solution: Start Docker Desktop or install Docker

Low memory warning

⚠️ Low memory detected (0.8GB). This might affect performance.

Solution: Close other applications or choose a lighter setup

Service startup failure

✗ Failed to start monitoring services

Solution: Check logs with docker-compose logs and ensure ports aren't in use


💡 Tip: Use the interactive menu for the best experience. It provides real-time system information and guides you through the setup process.