--- title: GitLab Serverless description: "Deploy functions on any infrastructure managed through a single UI." suppress_header: true twitter_image: '/images/tweets/gitlab-serverless-twitter-card.png' extra_css: - auto-devops.css extra_js: - features.js --- .blank-header = image_tag "/images/home/icons-pattern-left.svg", class: "image-border image-border-left", alt: "Gitlab hero border pattern left svg" = image_tag "/images/home/icons-pattern-right.svg", class: "image-border image-border-right", alt: "Gitlab hero border pattern right svg" .header-content = image_tag "/images/serverless/serverless-header.svg", class: "hero-image-large", alt: "Gitlab serverless header svg" %h1 Serverless %p Deploy functions on any infrastructure managed through a single UI. = link_to "Try GitLab for Free", "/free-trial/", class: "btn cta-btn accent" .content-container .content.tile = image_tag "/images/features/function-icon.svg", alt: "Functions as a service", style: "height: 100px;" %h2 Your own FaaS built-in to GitLab :markdown Functions-as-a-service (FaaS) allows you to write small, discrete units of code with event-based execution. Developers deploy code without worrying about the infrastructure it will run on. Code executes when it's needed so you don't use compute resources while your app is idle. GitLab Serverless allows you to run your own FaaS on any infrastructure without the vendor lock-in of traditional cloud function services. %a.btn.cta-btn.accent{ href: "#{data.categories.serverless.documentation}" } Serverless Documentation %a.btn.cta-btn.accent{ href: "#{data.categories.serverless.direction}" } Serverless Direction .content.tile = image_tag "/images/features/kubernetes-knative.svg", alt: "Kubernetes and Knative", style: "height: 100px;" %h2 Kubernetes and Knative :markdown Gain flexibility and portability by running serverless workloads on Kubernetes. [Knative](https://cloud.google.com/knative/) is an open source framework for building, deploying, and managing serverless workloads on Kubernetes. Install Knative to your cluster with a single click using the GitLab [Kubernetes integration](/solutions/kubernetes/). GitLab Serverless uses Knative to create a seamless experience for the entire DevOps lifecycle. = link_to "GitLab + Kubernetes", "/kubernetes/", class: "btn cta-btn accent" .content.tile = image_tag "/images/serverless/infrastructure.svg", alt: "Cloud or on-premises infrastructure", style: "height: 100px;" %h2 Deploy on any infrastructure :markdown Go multi-cloud With GitLab Serverless and deploy to any cloud or on-premises infrastructure. GitLab [connects to any Kubernetes cluster](https://docs.gitlab.com/ee/user/project/clusters/index.html#adding-an-existing-kubernetes-cluster) so you can choose to run your Serverless workloads anywhere Kubernetes runs. %a.btn.cta-btn.accent{ href: "https://docs.gitlab.com/ee/user/project/clusters/index.html#adding-an-existing-kubernetes-cluster" } Connect a cluster .content.tile = image_tag "/images/serverless/scale.svg", alt: "Functions as a service", style: "height: 100px;" %h2 Auto-scaling with scale to zero :markdown Leveraging [Knative Serving](https://github.com/knative/serving) your Kubernetes cluster automatically scales pods up and down based on load. "Scale to zero" stops consuming resources when there are no requests. %a.btn.cta-btn.accent{ href: "https://cloud.google.com/knative/" } Learn more about Knative .content-container.explore-gitlab-products.text-center %h2.color-primary Try = link_to "GitLab Ultimate", "/pricing/#self-managed" risk-free for 30 days. %p.subheader-text No credit card required. Have questions? = link_to "Contact us.", "/sales/", class: "contact-us" .action = link_to "Get Your Free Trial Today", "/free-trial/", class: "btn cta-btn btn-red margin-top20" - if current_page.data.trial_bar = partial "includes/features/gitlab-ee-trial"