Skip to main content

Urbalurba Infrastructure

Complete datacenter on your laptop - A zero-friction developer platform that provides production-grade infrastructure locally.

What is This?

Urbalurba Infrastructure is a comprehensive Kubernetes-based platform that runs the same configuration in development and production:

  • Local Development: Run everything on your laptop with Rancher Desktop
  • Production Ready: Deploy the exact same configuration to Azure AKS or any Kubernetes cluster
  • Zero Cloud Dependencies: Develop and test without internet connectivity
  • Privacy-First AI: Run LLMs locally on your own data

Run Anywhere

PlatformArchitectureUse Case
Laptop (Rancher Desktop)ARM64 / x86_64Local development
Azure AKSx86_64Production cloud
Ubuntu ServerARM64 / x86_64Self-hosted production
Raspberry PiARM64Edge computing, home lab
One codebase. Any platform. Same result.

Once your Kubernetes cluster is running, everything else is identical regardless of where it runs. Same manifests, same Ansible playbooks, same services, same URLs.

Services Included

Core Infrastructure

  • Kubernetes - Container orchestration via Rancher Desktop
  • Traefik - Ingress controller with automatic TLS
  • Nginx - Web server

Observability Stack

  • Prometheus - Metrics collection
  • Grafana - Visualization and dashboards
  • Loki - Log aggregation
  • Tempo - Distributed tracing
  • OpenTelemetry Collector - Telemetry pipeline

Databases

  • PostgreSQL - Primary relational database
  • MySQL - Alternative SQL database
  • MongoDB - Document database
  • Qdrant - Vector database for AI
  • Redis - Cache and message broker
  • Elasticsearch - Search engine

AI & Machine Learning

  • OpenWebUI - ChatGPT-like interface
  • LiteLLM - LLM proxy for multiple providers
  • Ollama - Local LLM runtime
  • Tika - Document extraction

Authentication

  • Authentik - SSO and identity provider with blueprints

Message Queues

  • RabbitMQ - Message broker

Development Tools

  • ArgoCD - GitOps continuous deployment
  • pgAdmin - PostgreSQL administration
  • RedisInsight - Redis administration

Networking

  • Tailscale - Secure mesh VPN
  • Cloudflare Tunnels - Public access without port forwarding

Quick Start

Prerequisites

  • macOS, Linux, or Windows with WSL2
  • 16GB RAM minimum (32GB recommended)
  • 50GB free disk space
  • Rancher Desktop installed

Installation

# Clone the repository
git clone https://github.com/terchris/urbalurba-infrastructure.git
cd urbalurba-infrastructure

# Run the installer
./install-rancher.sh

# Access the provision host
./login-provision-host.sh

# Configure secrets
cd topsecret
./create-kubernetes-secrets.sh
# Edit your values in secrets-config/
./create-kubernetes-secrets.sh
kubectl apply -f kubernetes/kubernetes-secrets.yml

# Deploy services using Ansible
cd /mnt/urbalurbadisk/ansible
ansible-playbook playbooks/034-setup-grafana.yml

Access Your Services

After deployment, access services at:

ServiceURL
Nginxhttp://localhost
Grafanahttp://grafana.localhost
Prometheushttp://prometheus.localhost
Authentikhttp://authentik.localhost
OpenWebUIhttp://openwebui.localhost
pgAdminhttp://pgadmin.localhost
ArgoCDhttp://argocd.localhost

Documentation Structure

Repository Structure

urbalurba-infrastructure/
├── ansible/ # Ansible playbooks for deployment
├── docs/ # Documentation (this site)
├── manifests/ # Kubernetes manifests (numbered by category)
├── provision-host/ # Provision host container scripts
├── topsecret/ # Secrets management (gitignored)
├── install-rancher.sh # Main installer script
└── mkdocs.yml # Documentation site configuration

Contributing

Contributions are welcome! Please read the development workflow and git workflow guides before submitting changes.

License

This project is maintained by the Urbalurba development team.