Deploy GitLab to Kubernetes without Helm

New to GitLab and interested in deploying a GitLab-ee container in Kubernetes. We don’t use Helm in our K8s and so am looking for just a sample YAML file to do this.

Every example I’ve found seems exclusive to a Helm chart. Does anyone have a resource for a YAML sample or is there some reason why Helm must be used? TIA.

Gitlab will use helm to deploy, but you don’t actually need anything on your kubernetes cluster. I don’t like the gui auto-devops checkbox because it creates an ingress and namespace that I don’t like, so I have the following:

.gitlab-ci.yml

include:
  -  template: Auto-DevOps.gitlab-ci.yml
production_manual:
  environment:
    url: https://demo-python.$KUBE_INGRESS_BASE_DOMAIN
    kubernetes:
      namespace: demo-python-prod

staging:
  environment:
    url: https://demo-python.$KUBE_INGRESS_BASE_DOMAIN
    kubernetes:
      namespace: demo-python-staging

review:
  environment:
    url: https://demo-python.$KUBE_INGRESS_BASE_DOMAIN
    kubernetes:
      namespace: demo-python-review

And then, in your project, create a .gitlab folder with auto-deploy-values.yaml file in it which can customize your app. The minimum I use is a service port for your app but there are a bunch you can have (auto-deploy-app docs):

.gitlab/auto-deploy-values.yaml

service:
  externalPort: 8080
  internalPort: 8080

No actual Helm needed on your cluster…

Are you describing using GitLab to deploy the ‘demo-python’ to Kubernetes?

Yes, this would deploy the project “demo-python” using a dockerfile located in the root of the project. Did you want an example layout?

No thank you. I just wanted to clarify that I may not have been clear enough in my original post.

What I’m asking for is how to deploy GitLab (itself) as a container inside of Kubernetes.

I’ve been able to deploy GitLab as a container in Docker but want to be able to orchestrate the deployment via K8s.

In that vein, the overwhelming majority of applications I’ve deployed in Kubernetes, the vendors or the community have publicly provided YAML files to deploy each application (in this case, GitLab), but using my apparently-limited Google-fu, the only guidance I can find is deploying GitLab in Kubernetes via a Helm Chart. However, we don’t use Helm so I was hoping this community might have a resource that had an example YAML file for deploying GitLab in Kubernetes… OR, maybe that GitLab could not be run in Kubernetes for some reason.

Does that add more context? I’m sorry for any confusion.

Hey Michael – I believe I’ve found what I need. Here is a blog article talking about the K8s deployments:

And here is the GitHub source for his YAMLs:

Going to try to run these and I’ll report back.

Hi @thepip3r, have you able to deploy Gitlab into Kubernetes using those manifest files ?

I tried the tutorial, but the gitlab container end up with an error “Readiness probe failed: HTTP probe failed with statuscode: 502”