How to connect Gitlab project to Kubernetes cluster?

I want to connect my Gitlab project with a Kubernetes cluster.

Basically I want to try to create my first CI/CD pipeline.

Submit an answer

This textbox defaults to using Markdown to format your answer.

You can type !ref in this text area to quickly search our full set of tutorials, documentation & marketplace offerings and insert the link!

Sign In or Sign Up to Answer

These answers are provided by our Community. If you find them useful, show some love by clicking the heart. If you run into issues leave a comment, or add your own answer to help others.

Accepted Answer


With GitLab this is quite straight forward to do.


  • Deploy a K8s cluster on DigitalOcean. If you do not have that already, here’s how to do it:

  • Follow the instructions on how to install kubectl and connect to the cluster. You can follow the steps here:

  • Create an account with

  • Create your GitLab project

Once you have all that ready, you could follow the steps on the official GitLab website, they have really good documentation on how to add an existing Kubernetes cluster to your project:

The best thing is that once you’ve added the cluster, you can just install applications like Helm Tiller and Prometheus, directly via your GitLab interface with just one click.

Hope that this helps! Regards, Bobby

Follow up question, since the CA expires every week, will we need to update the configuration on Gitlab every week?


I was able to follow this and am able to integrate kubernetes in gitlab.

But I cannot do anything further…I get :

Something went wrong while installing Helm Tiller Failed to install. Even if I have installed Helm and Tiller manually.

Do you know any solution for this ? Thanks Julian

  • Create a gitlab-admin serviceaccount.
  • Create the gitlab-admin cluster role binding with RBAC authorization.
  • Get the gitlab-admin secret you just created in the kube-system namespace, and take the token out. This will be used as your TOKEN.
  • Get your project’s namespace’s default token secret and extract the certificate. This will be your CA.
  • Get your cluster’s public URL (which could be an IP address). This will be your API URL.
  • Your project’s namespace (which has to be unique — and not default) will be your NAMESPACE.
  • Now connect your cluster through the GitLab Kubernetes portal.