Skip to main content

Urbalurba Infrastructure Stack

Your cloud services, on your laptop.

What is UIS?

UIS gives you the same services you use from cloud providers — databases, monitoring, AI, authentication — running on your own machine. No cloud account needed. Same configuration works on your laptop and in production.

How it Works

A management container (the Provision Host) uses standard tools — Ansible, Helm, kubectl — to deploy services onto any Kubernetes cluster. You interact with it through the ./uis CLI.

The same provision host targets your laptop, a cloud cluster, or a Raspberry Pi — only the Kubernetes endpoint changes.

Cloud Services Comparison

UIS replaces cloud-managed services with open-source equivalents you control:

What you needCloud service you knowUIS gives you
Monitoring & ObservabilityAzure Monitor, CloudWatchPrometheus, Grafana, Loki, Tempo
Relational DatabaseAzure Database for PostgreSQLPostgreSQL, MySQL
AI & LLM ServicesAzure OpenAI, AWS BedrockOpenWebUI, LiteLLM, Ollama
Identity & SSOAzure AD, AWS IAMAuthentik
Data Science & AnalyticsAzure DatabricksSpark, JupyterHub, Unity Catalog
GitOps & DeploymentAzure DevOps, GitHub ActionsArgoCD
Message QueuesAzure Service Bus, SQSRabbitMQ
API GatewayAzure API ManagementGravitee

See the full services comparison →

Runs 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.

Quick Start

Prerequisites

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

Installation

Download the uis script and start — the container image is pulled automatically:

macOS / Linux:

# Download the UIS CLI
curl -fsSL https://raw.githubusercontent.com/helpers-no/urbalurba-infrastructure/main/uis -o uis
chmod +x uis

# Start the UIS provision host (pulls the container image automatically)
./uis start

# Deploy a single service
./uis deploy postgresql

# Or install a full package
./uis stack install observability

Windows (PowerShell):

# Download the UIS CLI
Invoke-WebRequest -Uri "https://raw.githubusercontent.com/helpers-no/urbalurba-infrastructure/main/uis.ps1" -OutFile "uis.ps1"

# Start the UIS provision host (pulls the container image automatically)
.\uis.ps1 start

# Deploy a single service
.\uis.ps1 deploy postgresql

# Or install a full package
.\uis.ps1 stack install observability

Access Your Services

After deployment, access services at:

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

Documentation

Your Working Directory

After running ./uis start, your directory looks like this:

my-project/
├── uis # UIS CLI (the only file you download)
├── .uis.extend/ # Service configuration overrides (yours to edit)
├── .uis.secrets/ # Passwords, API keys, certificates (gitignored)
└── .gitignore # Auto-created, excludes .uis.secrets/
  • .uis.extend/ — Customize which services are enabled, cluster settings, and tool preferences. Edit these files to tailor UIS to your environment.
  • .uis.secrets/ — All credentials and sensitive config. Generated with safe defaults on first run. Never committed to git.

Everything else lives inside the container image — manifests, playbooks, and tools are all baked in.

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.