go-mad/docs/installation.md
2026-10-04 16:20:07 +02:00

1.6 KiB

Installation

Prerequisites

  • Go 1.27.1 or later
  • Docker and Docker Compose (for containerized deployment)
  • Node.js and npm (for React frontend development)
  • PostgreSQL 15+ (or use Docker)

Local Development

1. Clone the repository

git clone https://github.com/your-organization/go-mad.git
cd go-mad

2. Install dependencies

# Go dependencies
go mod download

# Node dependencies
npm install

3. Set up the database

# Using Docker Compose
make compose-up

# Or manually
createdb mad
# Or set up PostgreSQL with user 'mad' and database 'mad'

4. Configure the application

# Create config.yaml
cp config.example.yaml config.yaml
# Edit config.yaml with your settings

5. Run migrations

make test
# Or run manually
go run ./cmd/go-mad

The application will automatically run migrations on startup.

6. Start the development server

# Development mode with hot reload
make web-dev

# Or run the Go binary
make run

Access the application at http://localhost:8080

Docker Deployment

# Build and start
docker compose up --build -d

# View logs
docker compose logs -f

# Stop
docker compose down

Kubernetes Deployment

helm install go-mad oci://your-registry/go-mad/helm/go-mad

Production Checklist

  • Change the default JWT secret
  • Configure proper PostgreSQL credentials
  • Set up HTTPS/TLS via ingress
  • Configure backups for the PostgreSQL data volume
  • Set up monitoring and logging
  • Review role-based access control settings