Deploy and release your application
Deployment is the step of the software delivery process when your application gets deployed to its final, target infrastructure.
You can deploy your application internally or to the public. Preview a release in a review app, and use feature flags to release features incrementally.
Getting started Overview of how features fit together. |
Packages and registries Package management, container registry, artifact storage, dependency management. |
Environments Environments, variables, dashboards, review apps. |
Deployments Deployments, rollbacks, safety, approvals. |
Releases Releases, versioning, assets, tags, milestones, evidence. |
Roll out an application incrementally Kubernetes, CI/CD, risk mitigation, deployment. |
Feature flags Progressive delivery, controlled deployment, risk reduction. |
GitLab Pages Static site hosting, documentation publishing, project websites, custom domains. |
Related topics
- Auto DevOps is an automated CI/CD-based workflow that supports the entire software supply chain: build, test, lint, package, deploy, secure, and monitor applications using GitLab CI/CD. It provides a set of ready-to-use templates that serve the vast majority of use cases.
- Auto Deploy is the DevOps stage dedicated to software deployment using GitLab CI/CD. Auto Deploy has built-in support for EC2 and ECS deployments.
- Deploy to Kubernetes clusters by using the GitLab agent.
- Use Docker images to run AWS commands from GitLab CI/CD, and a template to facilitate deployment to AWS.
- Use GitLab CI/CD to target any type of infrastructure accessible by GitLab Runner. User and pre-defined environment variables and CI/CD templates support setting up a vast number of deployment strategies.
- Use GitLab Cloud Seed, an open-source Incubation Engineering program, to set up deployment credentials and deploy your application to Google Cloud Run with minimal friction.