[{"data":1,"prerenderedAt":314},["ShallowReactive",2],{"navigation":3,"docs-navigation-en":4,"\u002Fen\u002Fdocs\u002Fapp-services":115,"\u002Fen\u002Fdocs\u002Fapp-services-surround":309},[],[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":37,"body":117,"description":302,"extension":303,"lastUpdated":304,"meta":305,"navigation":306,"path":38,"seo":307,"stem":39,"__hash__":308},"docs\u002Fen\u002F1.docs\u002F3.app-services\u002F1.index.md",{"type":118,"value":119,"toc":287},"minimark",[120,125,129,133,138,154,158,170,174,189,193,203,208,212,263,267,270,274,280],[121,122,124],"h2",{"id":123},"what-is-an-app-service","What is an App Service?",[126,127,128],"p",{},"An App Service is a deployment of your own application on your Kubernetes cluster. You connect your GitHub repository — lowcloud automatically builds the code and deploys the app to your cluster. Alternatively, you can use any Docker image from a container registry.",[121,130,132],{"id":131},"create-an-app-service","Create an App Service",[134,135,137],"h3",{"id":136},"prerequisites","Prerequisites",[139,140,141,145],"ul",{},[142,143,144],"li",{},"A lowcloud account with an active Kubernetes cluster",[142,146,147,148,153],{},"A connected ",[149,150,152],"a",{"href":151},".\u002Fguides\u002Fcontainer-registries","Container Registry"," — used for builds (image push) and by the cluster for deployments (image pull)",[134,155,157],{"id":156},"_1-add-a-service","1. Add a Service",[126,159,160,161,165,166,169],{},"In the lowcloud Dashboard, navigate to ",[162,163,164],"strong",{},"Add Service"," and select ",[162,167,168],{},"App Service",".",[134,171,173],{"id":172},"_2-choose-a-name","2. Choose a Name",[126,175,176,177,181,182,185,186,169],{},"Give your App Service a descriptive name (e.g. ",[178,179,180],"code",{},"my-frontend"," or ",[178,183,184],{},"api-production","). Click ",[162,187,188],{},"Next",[134,190,192],{"id":191},"_3-select-source-and-registry","3. Select Source and Registry",[126,194,195,196,199,200,202],{},"Select your ",[162,197,198],{},"GitHub repository"," and choose the ",[162,201,152],{}," to use for this service. The registry stores the built images — the cluster pulls images from there for deployment.",[126,204,205,206,169],{},"Click ",[162,207,188],{},[134,209,211],{"id":210},"_4-configure-build","4. Configure Build",[139,213,214,224,241,250],{},[142,215,216,219,220,223],{},[162,217,218],{},"Branch"," — Select the branch to build and deploy (e.g. ",[178,221,222],{},"main",")",[142,225,226,229,230,233,234,237,238,169],{},[162,227,228],{},"Build Strategy"," — Choose between ",[162,231,232],{},"Railpack"," and ",[162,235,236],{},"Docker",". Railpack auto-detects your app and builds it without further configuration. For more details, see ",[149,239,43],{"href":240},".\u002Fapp-services\u002Fbuild-settings",[142,242,243,246,247,249],{},[162,244,245],{},"Application Path"," — The path in the repository where your app is located. Can be left at the default ",[178,248,169],{}," if the app is in the root directory.",[142,251,252,255,256,259,260,223],{},[162,253,254],{},"Application Port"," — The port your app exposes (e.g. ",[178,257,258],{},"3000",", ",[178,261,262],{},"8080",[134,264,266],{"id":265},"_5-set-environment-variables","5. Set Environment Variables",[126,268,269],{},"Add the environment variables your app needs (e.g. database URLs, API keys). This step is optional and can be configured later.",[134,271,273],{"id":272},"_6-create","6. Create",[126,275,205,276,279],{},[162,277,278],{},"Create",". lowcloud will pull your code from GitHub, build the image, push it to the registry, and deploy the app to your cluster.",[126,281,282,283,286],{},"Wait until the label in the Dashboard changes to ",[162,284,285],{},"\"Deployed\""," — your App Service is then live.",{"title":288,"searchDepth":289,"depth":289,"links":290},"",2,[291,292],{"id":123,"depth":289,"text":124},{"id":131,"depth":289,"text":132,"children":293},[294,296,297,298,299,300,301],{"id":136,"depth":295,"text":137},3,{"id":156,"depth":295,"text":157},{"id":172,"depth":295,"text":173},{"id":191,"depth":295,"text":192},{"id":210,"depth":295,"text":211},{"id":265,"depth":295,"text":266},{"id":272,"depth":295,"text":273},"Learn what App Services are and how to deploy your applications on your Kubernetes cluster with lowcloud.","md","2026-04-03",{},{"icon":17},{"title":37,"description":302},"lJ8grUVx15u-c5ew7_usFxdw-hb9PDQujbs3H0_X2BA",[310,312],{"title":32,"path":33,"stem":34,"description":311,"icon":35,"children":-1},"Learn how to connect an external container registry to lowcloud for building and deploying your apps.",{"title":43,"path":44,"stem":45,"description":313,"icon":46,"children":-1},"Learn how to configure the source and build settings of your App Service in lowcloud.",1776519811291]