[{"data":1,"prerenderedAt":561},["ShallowReactive",2],{"navigation":3,"docs-navigation-en":4,"\u002Fen\u002Fdocs\u002Fgetting-started\u002Fhow-it-works":115,"\u002Fen\u002Fdocs\u002Fgetting-started\u002Fhow-it-works-surround":556},[],[5,24,36,67,108],{"title":6,"path":7,"stem":8,"children":9,"icon":23},"Getting Started","\u002Fen\u002Fdocs\u002Fgetting-started","en\u002F1.docs\u002F1.getting-started\u002F1.index",[10,13,18],{"title":11,"path":7,"stem":8,"icon":12},"Introduction","i-lucide-house",{"title":14,"path":15,"stem":16,"icon":17},"Get Started","\u002Fen\u002Fdocs\u002Fgetting-started\u002Fget-started","en\u002F1.docs\u002F1.getting-started\u002F2.get-started","i-lucide-rocket",{"title":19,"path":20,"stem":21,"icon":22},"How It Works","\u002Fen\u002Fdocs\u002Fgetting-started\u002Fhow-it-works","en\u002F1.docs\u002F1.getting-started\u002F3.how-it-works","i-lucide-lightbulb",false,{"title":25,"path":26,"stem":27,"children":28,"icon":23},"Guides","\u002Fen\u002Fdocs\u002Fguides","en\u002F1.docs\u002F2.guides\u002F1.index",[29,31],{"title":25,"path":26,"stem":27,"icon":30},"i-lucide-book-open",{"title":32,"path":33,"stem":34,"icon":35},"Connect a Container Registry","\u002Fen\u002Fdocs\u002Fguides\u002Fcontainer-registries","en\u002F1.docs\u002F2.guides\u002F2.container-registries","i-lucide-container",{"title":37,"path":38,"stem":39,"children":40,"icon":23},"App Services","\u002Fen\u002Fdocs\u002Fapp-services","en\u002F1.docs\u002F3.app-services\u002F1.index",[41,42,47,52,57,62],{"title":37,"path":38,"stem":39,"icon":17},{"title":43,"path":44,"stem":45,"icon":46},"Build Settings","\u002Fen\u002Fdocs\u002Fapp-services\u002Fbuild-settings","en\u002F1.docs\u002F3.app-services\u002F2.build-settings","i-lucide-settings",{"title":48,"path":49,"stem":50,"icon":51},"Env Variables","\u002Fen\u002Fdocs\u002Fapp-services\u002Fenvironment-variables","en\u002F1.docs\u002F3.app-services\u002F3.environment-variables","i-lucide-key",{"title":53,"path":54,"stem":55,"icon":56},"Custom Domains","\u002Fen\u002Fdocs\u002Fapp-services\u002Fcustom-domains","en\u002F1.docs\u002F3.app-services\u002F4.custom-domains","i-lucide-globe",{"title":58,"path":59,"stem":60,"icon":61},"Health Checks","\u002Fen\u002Fdocs\u002Fapp-services\u002Fhealth-checks","en\u002F1.docs\u002F3.app-services\u002F5.health-checks","i-lucide-heart-pulse",{"title":63,"path":64,"stem":65,"icon":66},"Autoscaling","\u002Fen\u002Fdocs\u002Fapp-services\u002Fautoscaling","en\u002F1.docs\u002F3.app-services\u002F6.autoscaling","i-lucide-scaling",{"title":68,"path":69,"stem":70,"children":71,"icon":23},"Helm Releases","\u002Fen\u002Fdocs\u002Fhelm-releases","en\u002F1.docs\u002F4.helm-releases\u002F1.index",[72,74,79,84,88,93,98,103],{"title":68,"path":69,"stem":70,"icon":73},"i-lucide-package",{"title":75,"path":76,"stem":77,"icon":78},"Deploy PostgreSQL","\u002Fen\u002Fdocs\u002Fhelm-releases\u002Fdeploy-postgresql","en\u002F1.docs\u002F4.helm-releases\u002F2.deploy-postgresql","i-lucide-database",{"title":80,"path":81,"stem":82,"icon":83},"Deploy Redis","\u002Fen\u002Fdocs\u002Fhelm-releases\u002Fdeploy-redis","en\u002F1.docs\u002F4.helm-releases\u002F3.deploy-redis","i-lucide-zap",{"title":85,"path":86,"stem":87,"icon":83},"Deploy Valkey","\u002Fen\u002Fdocs\u002Fhelm-releases\u002Fdeploy-valkey","en\u002F1.docs\u002F4.helm-releases\u002F3.deploy-valkey",{"title":89,"path":90,"stem":91,"icon":92},"Deploy n8n","\u002Fen\u002Fdocs\u002Fhelm-releases\u002Fdeploy-n8n","en\u002F1.docs\u002F4.helm-releases\u002F4.deploy-n8n","i-lucide-workflow",{"title":94,"path":95,"stem":96,"icon":97},"Deploy RustFS","\u002Fen\u002Fdocs\u002Fhelm-releases\u002Fdeploy-rustfs","en\u002F1.docs\u002F4.helm-releases\u002F5.deploy-rustfs","i-lucide-hard-drive",{"title":99,"path":100,"stem":101,"icon":102},"Deploy OpenSearch","\u002Fen\u002Fdocs\u002Fhelm-releases\u002Fdeploy-opensearch","en\u002F1.docs\u002F4.helm-releases\u002F6.deploy-opensearch","i-lucide-search",{"title":104,"path":105,"stem":106,"icon":107},"Deploy Keycloak","\u002Fen\u002Fdocs\u002Fhelm-releases\u002Fdeploy-keycloak","en\u002F1.docs\u002F4.helm-releases\u002F7.deploy-keycloak","i-lucide-shield-check",{"title":109,"path":110,"stem":111,"children":112,"icon":23},"Glossary","\u002Fen\u002Fdocs\u002Fglossary","en\u002F1.docs\u002F5.glossary\u002F1.index",[113],{"title":109,"path":110,"stem":111,"icon":114},"i-lucide-book-a",{"id":116,"title":19,"body":117,"description":549,"extension":550,"lastUpdated":551,"meta":552,"navigation":553,"path":20,"seo":554,"stem":21,"__hash__":555},"docs\u002Fen\u002F1.docs\u002F1.getting-started\u002F3.how-it-works.md",{"type":118,"value":119,"toc":529},"minimark",[120,124,129,136,144,167,174,178,181,208,211,215,221,241,244,248,253,256,260,272,278,281,313,317,320,326,329,357,364,408,412,415,428,432,435,439,486,489,492,495,502,506,509],[121,122,123],"p",{},"lowcloud is a DevOps platform that makes Kubernetes accessible to teams without requiring Kubernetes expertise. Infrastructure, deployments, and monitoring are managed through a unified interface.",[125,126,128],"h2",{"id":127},"the-big-picture","The Big Picture",[121,130,131],{},[132,133],"img",{"alt":134,"src":135},"lowcloud Stack","\u002Fimages\u002Fdocs\u002Flowcloud-stack.png",[121,137,138,139,143],{},"lowcloud acts as a central control plane between you and your cloud infrastructure. Instead of dealing with ",[140,141,142],"code",{},"kubectl",", Helm CLI, CI\u002FCD pipelines, and monitoring stacks, you manage everything through the lowcloud Dashboard:",[145,146,147,155,161],"ol",{},[148,149,150,154],"li",{},[151,152,153],"strong",{},"Infrastructure"," — Provision and scale Kubernetes clusters automatically",[148,156,157,160],{},[151,158,159],{},"Deployments"," — Deploy, update, and manage applications and services",[148,162,163,166],{},[151,164,165],{},"Monitoring"," — Monitor clusters and applications, receive alerts on issues",[121,168,169,170,173],{},"Your infrastructure runs on ",[151,171,172],{},"your"," cloud account. lowcloud manages it, and you keep full control.",[125,175,177],{"id":176},"why-kubernetes","Why Kubernetes?",[121,179,180],{},"Kubernetes is the industry standard for container orchestration. It provides:",[182,183,184,190,196,202],"ul",{},[148,185,186,189],{},[151,187,188],{},"Self-healing"," — Failed containers are automatically restarted",[148,191,192,195],{},[151,193,194],{},"Scaling"," — Horizontal and vertical, manual or automatic",[148,197,198,201],{},[151,199,200],{},"Rolling updates"," — Zero-downtime deployments out of the box",[148,203,204,207],{},[151,205,206],{},"Service discovery"," — Services automatically find each other in the cluster",[121,209,210],{},"The problem: Kubernetes is complex. The learning curve is steep, and the operational overhead for cluster management, networking, storage, and security is significant. This is exactly where lowcloud comes in. You get all the benefits of Kubernetes without having to manage the complexity yourself.",[125,212,214],{"id":213},"your-infrastructure-your-control","Your Infrastructure, Your Control",[121,216,217,218,220],{},"lowcloud is not shared hosting. Your clusters run on ",[151,219,172],{}," cloud account at your cloud provider. This means:",[182,222,223,229,235],{},[148,224,225,228],{},[151,226,227],{},"No vendor lock-in"," — Your infrastructure belongs to you. You can continue without lowcloud at any time.",[148,230,231,234],{},[151,232,233],{},"Full transparency"," — You see exactly which resources are running and what they cost.",[148,236,237,240],{},[151,238,239],{},"Data sovereignty"," — Your data stays on your infrastructure, in the region of your choice.",[121,242,243],{},"lowcloud connects to your cloud provider via API credentials and manages the infrastructure on your behalf.",[125,245,247],{"id":246},"the-workflow","The Workflow",[249,250,252],"h3",{"id":251},"_1-connect-your-cloud-provider","1. Connect Your Cloud Provider",[121,254,255],{},"Add your cloud API credentials to lowcloud. lowcloud uses them to provision resources in your account.",[249,257,259],{"id":258},"_2-provision-a-cluster","2. Provision a Cluster",[121,261,262,263,271],{},"lowcloud creates Kubernetes clusters fully automatically using ",[264,265,270],"a",{"href":266,"rel":267,"target":269},"https:\u002F\u002Fcluster-api.sigs.k8s.io\u002F",[268],"nofollow","\\_blank","ClusterAPI",". This includes the control plane, worker nodes, networking, and load balancers. The entire infrastructure is managed declaratively and can be scaled at any time.",[121,273,274],{},[132,275],{"alt":276,"src":277},"Provisioned infrastructure","\u002Fimages\u002Fdocs\u002Flc-k8s-infra.png",[121,279,280],{},"When you provision a cluster, lowcloud creates the following resources in your cloud account:",[182,282,283,289,295,301,307],{},[148,284,285,288],{},[151,286,287],{},"Firewall"," — Secures the entire cluster by restricting network access to only necessary ports and protocols.",[148,290,291,294],{},[151,292,293],{},"Load Balancer (K8S API)"," — Distributes requests to the Kubernetes API across control plane nodes for high availability.",[148,296,297,300],{},[151,298,299],{},"Load Balancer (Ingress Traffic)"," — Routes external HTTP\u002FHTTPS traffic to your applications running inside the cluster.",[148,302,303,306],{},[151,304,305],{},"Control Plane Nodes"," — Three nodes running the Kubernetes control plane for redundancy and high availability.",[148,308,309,312],{},[151,310,311],{},"Worker Groups"," — Groups of worker nodes where your applications and services run. You can configure multiple worker groups with different machine types to match your workload requirements.",[249,314,316],{"id":315},"inside-your-cluster","Inside Your Cluster",[121,318,319],{},"Once provisioned, lowcloud sets up everything inside the cluster that your applications need to run.",[121,321,322],{},[132,323],{"alt":324,"src":325},"Cluster architecture","\u002Fimages\u002Fdocs\u002Flc-k8s-in-cluster-architecture.png",[121,327,328],{},"Your cluster is organized into dedicated namespaces:",[182,330,331,337,343],{},[148,332,333,336],{},[151,334,335],{},"lowcloud-apps"," — Your application services. Each app is built from a connected GitHub repository, deployed as a Kubernetes Deployment, and exposed through a Service.",[148,338,339,342],{},[151,340,341],{},"lowcloud-builds"," — Container image build jobs. When you push code, lowcloud creates build jobs here that produce container images for your apps.",[148,344,345,348,349,352,353,356],{},[151,346,347],{},"helm-\u003Creleasename>"," — Each Helm Release runs in its own namespace (e.g. ",[140,350,351],{},"helm-postgresql",", ",[140,354,355],{},"helm-redis","). Each release manages its own Deployments and Services.",[121,358,359,360,363],{},"lowcloud also installs and manages essential ",[151,361,362],{},"system components"," automatically:",[182,365,366,372,378,384,390,396,402],{},[148,367,368,371],{},[151,369,370],{},"Traefik"," — Ingress controller that routes external traffic to your services",[148,373,374,377],{},[151,375,376],{},"Cert-Manager"," — Automatic TLS certificate provisioning and renewal",[148,379,380,383],{},[151,381,382],{},"Cilium"," — Container networking (CNI) for pod-to-pod communication",[148,385,386,389],{},[151,387,388],{},"CSI Driver"," — Persistent volume provisioning for stateful workloads",[148,391,392,395],{},[151,393,394],{},"Cloud Controller Manager"," — Integration with cloud provider APIs for load balancers and nodes",[148,397,398,401],{},[151,399,400],{},"Metrics Server"," — Collects resource metrics for autoscaling (HPA)",[148,403,404,407],{},[151,405,406],{},"lowcloud Monitoring Stack"," — Built-in monitoring and alerting",[249,409,411],{"id":410},"_3-deploy-applications","3. Deploy Applications",[121,413,414],{},"Deploy your applications through one of two paths:",[182,416,417,423],{},[148,418,419,422],{},[151,420,421],{},"Container Apps"," — Connect a GitHub repository. lowcloud detects code changes, builds container images, and deploys them automatically to your cluster.",[148,424,425,427],{},[151,426,68],{}," — Deploy pre-configured services like PostgreSQL, Redis, or n8n directly from Helm Chart registries.",[249,429,431],{"id":430},"_4-monitor-and-scale","4. Monitor and Scale",[121,433,434],{},"lowcloud continuously monitors your clusters and applications. You are automatically notified when issues arise, such as high resource utilization or failed deployments. Clusters and applications can be scaled up or down at any time.",[125,436,438],{"id":437},"what-you-can-deploy","What You Can Deploy",[440,441,442,458],"table",{},[443,444,445],"thead",{},[446,447,448,452,455],"tr",{},[449,450,451],"th",{},"Type",[449,453,454],{},"Description",[449,456,457],{},"Examples",[459,460,461,474],"tbody",{},[446,462,463,468,471],{},[464,465,466],"td",{},[151,467,421],{},[464,469,470],{},"Your own applications from GitHub repositories",[464,472,473],{},"Web apps, APIs, workers, cron jobs",[446,475,476,480,483],{},[464,477,478],{},[151,479,68],{},[464,481,482],{},"Pre-configured services from Chart registries",[464,484,485],{},"PostgreSQL, Redis, n8n, Grafana",[249,487,421],{"id":488},"container-apps",[121,490,491],{},"Connect your GitHub repository and a container registry. lowcloud automatically builds your app as a container image on every push, pushes it to the registry, and deploys it to your cluster.",[249,493,68],{"id":494},"helm-releases",[121,496,497,498,501],{},"For databases, caches, and other infrastructure services, you use Helm Releases. Specify a chart registry, configure the values, and deploy. The entire management runs through the Dashboard. With ",[151,499,500],{},"Helm Release Dependencies",", you link services together so lowcloud automatically handles startup order and service discovery.",[125,503,505],{"id":504},"monitoring-alerting","Monitoring & Alerting",[121,507,508],{},"Monitoring and alerting are integrated out of the box and require no additional configuration. lowcloud monitors:",[182,510,511,517,523],{},[148,512,513,516],{},[151,514,515],{},"Cluster health"," — Node status, resource utilization, Kubernetes events",[148,518,519,522],{},[151,520,521],{},"Applications"," — Pod status, restarts, deployment progress",[148,524,525,528],{},[151,526,527],{},"Notifications"," — Automatic alerts when issues arise",{"title":530,"searchDepth":531,"depth":531,"links":532},"",2,[533,534,535,536,544,548],{"id":127,"depth":531,"text":128},{"id":176,"depth":531,"text":177},{"id":213,"depth":531,"text":214},{"id":246,"depth":531,"text":247,"children":537},[538,540,541,542,543],{"id":251,"depth":539,"text":252},3,{"id":258,"depth":539,"text":259},{"id":315,"depth":539,"text":316},{"id":410,"depth":539,"text":411},{"id":430,"depth":539,"text":431},{"id":437,"depth":531,"text":438,"children":545},[546,547],{"id":488,"depth":539,"text":421},{"id":494,"depth":539,"text":68},{"id":504,"depth":531,"text":505},"Learn how lowcloud provisions Kubernetes infrastructure, deploys applications, and monitors your clusters, all through a unified interface.","md","2026-03-23",{},{"icon":22},{"title":19,"description":549},"ZSj4thiwqo42Vfsu_u1yVvacNDIxi4xEWoh-IRwY5QQ",[557,559],{"title":14,"path":15,"stem":16,"description":558,"icon":17,"children":-1},"Set up your first lowcloud environment on Hetzner Cloud.",{"title":25,"path":26,"stem":27,"description":560,"icon":30,"children":-1},"Step-by-step tutorials for databases, services, and configurations on lowcloud.",1776469320341]