GitLab CI logo

GitLab CI

GitLab integrated CI to test, build and deploy your code
+ 1

What is GitLab CI?

GitLab offers a continuous integration service. If you add a .gitlab-ci.yml file to the root directory of your repository, and configure your GitLab project to use a Runner, then each merge request or push triggers your CI pipeline.
GitLab CI is a tool in the Continuous Integration category of a tech stack.

Who uses GitLab CI?

653 companies reportedly use GitLab CI in their tech stacks, including deleokorea, Alibaba Travels, and Primer.

1447 developers on StackShare have stated that they use GitLab CI.

GitLab CI Integrations

GitLab, Codeship, LambdaTest, Dokku, and Hyper are some of the popular tools that integrate with GitLab CI. Here's a list of all 28 tools that integrate with GitLab CI.
Pros of GitLab CI
Robust CI with awesome Docker support
Simple configuration
All in one solution
Source Control and CI in one place
Integrated with VCS on commit
Free and open source
Easy to configure own build server i.e. GitLab-Runner
Hosted internally
Built-in Docker Registry
Built-in support of Review Apps
Pipeline could be started manually
Enable or disable pipeline by using env variables
Gitlab templates could be shared across logical group
Easy to setup the dedicated runner to particular job
Built-in support of Kubernetes
Decisions about GitLab CI

Here are some stack decisions, common use cases and reviews by companies and developers who chose GitLab CI in their tech stack.

Howie Zhao
Full Stack Engineer at yintrust · | 1 upvote · 10.4K views

GitLab CI can complete our basic CI/CD operations.

For startups, using GitLab CI instead of Jenkins can reduce our operation and maintenance pressure.

See more
Joshua Dean Küpper
CEO at Scrayos UG (haftungsbeschränkt) · | 7 upvotes · 607.1K views

For our internal team and collaboration panel we use Nuxt.js (with TypeScript that is transpiled into ES6), Webpack and npm. We enjoy the opinionated nature of Nuxt.js over vanilla Vue.js, as we would end up using all of the components Nuxt.js incorporates anyways and we can adhere to the conventions setup by the Nuxt.js project, which allows us to get better support in case we run into any dead ends. Webpack allows us to create reproducable builds and also debug our application with hot reloads, which greately increased the pace at which we are able to perform and test changes. We also incorporated a lot of testing (ESLint, Chai, Jasmine, Nightwatchjs) into our pipelines and can trigger those jobs through GitLab CI. All packages are fetched through npm, so that we can keep our git repositories slim and are notified of new updates aswell as reported security flaws.

See more
Bryan Dady
SRE Manager at Subsplash · | 5 upvotes · 433.6K views

I'm beginning to research the right way to better integrate how we achieve SCA / shift-left / SecureDevOps / secure software supply chain. If you use or have evaluated WhiteSource, Snyk, Sonatype Nexus, SonarQube or similar, I would very much appreciate your perspective on strengths and weaknesses and how you selected your ultimate solution. I want to integrate with GitLab CI.

See more
Shared insights

I have got a small radio service running on Node.js. Front end is written with React and packed with Webpack . I use Docker for my #DeploymentWorkflow along with Docker Swarm and GitLab CI on a single Google Compute Engine instance, which is also a runner itself. Pretty unscalable decision but it works great for tiny projects. The project is available on

See more
Joshua Dean Küpper
CEO at Scrayos UG (haftungsbeschränkt) · | 20 upvotes · 697.4K views

We use GitLab CI because of the great native integration as a part of the GitLab framework and the linting-capabilities it offers. The visualization of complex pipelines and the embedding within the project overview made Gitlab CI even more convenient. We use it for all projects, all deployments and as a part of GitLab Pages.

While we initially used the Shell-executor, we quickly switched to the Docker-executor and use it exclusively now.

We formerly used Jenkins but preferred to handle everything within GitLab . Aside from the unification of our infrastructure another motivation was the "configuration-in-file"-approach, that Gitlab CI offered, while Jenkins support of this concept was very limited and users had to resort to using the webinterface. Since the file is included within the repository, it is also version controlled, which was a huge plus for us.

See more

GitLab CI Alternatives & Comparisons

What are some alternatives to GitLab CI?
In a nutshell Jenkins CI is the leading open-source continuous integration server. Built with Java, it provides over 300 plugins to support building and testing virtually any project.
Focus on coding and count on Bamboo as your CI and build server! Create multi-stage build plans, set up triggers to start builds upon commits, and assign agents to your critical builds and deployments.
Travis CI
Free for open source projects, our CI environment provides multiple runtimes (e.g. Node.js or PHP versions), data stores and so on. Because of this, hosting your project on means you can effortlessly test your library or applications against multiple runtimes and data stores without even having all of them installed locally.
TeamCity is a user-friendly continuous integration (CI) server for professional developers, build engineers, and DevOps. It is trivial to setup and absolutely free for small teams and open source projects.
Continuous integration and delivery platform helps software teams rapidly release code with confidence by automating the build, test, and deploy process. Offers a modern software development platform that lets teams ramp.
See all alternatives

GitLab CI's Followers
1558 developers follow GitLab CI to keep up with related blogs and decisions.