---
title: Deploy GitLab Server on Scaleway Kubernetes clusters using Easy Deploy
description: Deploy GitLab server on Scaleway Kubernetes clusters with Easy Deploy. This guide provides steps for deployment and configurations for optimal GitOps practices.
tags: GitLab server kubernetes easy deploy
products:
  - kubernetes
dates:
  validation: 2025-01-02
  posted: 2024-06-20
  validation_frequency: 24
difficulty: beginner
usecase:
  - application-hosting
ecosystem:
  - scaleway-only
---
import Requirements from '@macros/iam/requirements.mdx'


This tutorial provides a guide to deploy a GitLab server on Scaleway Kubernetes clusters using the Easy Deploy feature.
It outlines the prerequisites, step-by-step deployment instructions, and post-deployment configurations necessary for optimal continuous delivery and GitOps practices.

<Requirements />
- A Scaleway account logged into the [console](https://console.scaleway.com)
- [Owner](/iam/concepts/#owner) status or [IAM permissions](/iam/concepts/#permission) allowing you to perform actions in the intended Organization
- A valid [API key](/iam/how-to/create-api-keys/)
- Created a Scaleway Kubernetes [Kapsule](/kubernetes/how-to/create-cluster/) or [Kosmos](/kubernetes/how-to/create-kosmos-cluster/) cluster
- A domain name and access to its DNS zone

## Deploying the GitLab Server application using Easy Deploy

1. In the [Scaleway console](https://console.scaleway.com/), navigate to the **Kubernetes** section under **Containers**.
2. Select the cluster where you want to deploy the GitLab server. The **Cluster Information** tab will display.
3. Click the **Easy Deploy** tab to open the application dashboard.
4. Click **Deploy Application** to launch the deployment wizard.
5. Select **Application Library** to view the list of available applications.
6. Choose the **GitLab server** application.
    <Message type="tip">
      If you cannot find the GitLab server application on the first page, use the search bar or navigate through the library.
    </Message>
7. Customize the default configuration for GitLab server using [Helm Charts](/tutorials/kubernetes-package-management-helm/). The default configuration looks as follows:
    ```yaml
    certmanager-issuer:
      email: me@example.com
    global:
      hosts:
        domain: gitlab.example.com
    ```
    Replace the following parameters:
    - `email`: Your email address.
    - `domain`: Your domain name.
        <Message type="note">
          The GitLab Server application is configured to use a `gitlab` subdomain. If you want your application running at `gitlab.example.com`, enter `example.com`.
        </Message>
8. Enter a name (e.g., `gitlab-server`) and a Kubernetes namespace for your application. If no name is entered, GitLab server will be installed in the default namespace.
9. Click **Deploy Application** to deploy the GitLab server on your Kubernetes cluster.

## Retrieving the GitLab Server root password

1. Access the [Kubernetes Dashboard](/kubernetes/how-to/access-kubernetes-dashboard/) of your cluster and navigate to **Secrets** under the **Config and Storage** section.
2. Click `gitlab-server-gitlab-initial-root-password` to display the application metadata.
3. Click the eye icon next to `password` to reveal and copy the GitLab server root password.

## Connecting to GitLab Server

GitLab server uses a Load Balancer to manage traffic. To check the deployment status, run:

```bash
$ kubectl get svc
```

Look for the `gitlab-server-nginx-ingress-controller` service. Once the `EXTERNAL-IP` status changes from `<PENDING>` to an assigned IP, your GitLab server application is up.
Configure an A-record for the `gitlab` subdomain in your DNS zone, pointing to the Load Balancer IP.

## Logging into GitLab Server

1. Open your GitLab server subdomain in a web browser.
2. Enter **root** as the username and the password retrieved earlier to log in.

## Additional resources

For more detailed information on GitLab server configuration and metrics setup, refer to the [official GitLab server documentation](https://docs.gitlab.com/).