Langsung ke konten utama

CI/CD dengan Gitlab

Sebelum memulai CI/CD, kita harus mempersiapkan shell untuk mengeksekusi proses di Gitlab dengan catatan saya menggunakan Ubuntu 20.04LTS. Melakukan dengan cara shell atau command dengan script, tujuannya adalah untuk mempermudah untuk mengeksekusi dan dokumentasi. Namun kembali lagi untuk setuap operator.

Berikut yang perlu dilakukan:

Gitlab Runner

Download

$ curl -LJO "https://s3.dualstack.us-east-1.amazonaws.com/gitlab-runner-downloads/latest/deb/gitlab-runner-helper-images.deb"

curl -LJO "https://s3.dualstack.us-east-1.amazonaws.com/gitlab-runner-downloads/latest/deb/gitlab-runner_amd64.deb"

Preparation in Gitlab

Go to Project Repository > CI/CD Settings > Register runner

Dari konfigurasi ini yang akan digunakan untuk registrasi


Install

$ sudo dpkg -i gitlab-runner-helper-images.deb gitlab-runner_amd64.deb


Cek Versi

$ sudo gitlab-runner -version


Cek Status

$ sudo gitlab-runner status


Ubah Configurasi

$ sudo visudo

Tambahkan: gitlab-runner ALL=(ALL:ALLALL

Registrasi Gitlab Runner

$ sudo gitlab-runner register

Enter the GitLab instance URL (for example, https://gitlab.com/):

https://gitlab.com

Enter the registration token:

glrt-[Token]

Enter a name for the runner. This is stored only in the local config.toml file:

[ubuntu2004]: Ubuntu 20.04 Runner

Enter an executor: instance, shell, ssh, parallels, virtualbox, docker, docker-windows, docker+machine, kubernetes, custom, docker-autoscaler:

shell

Jalankan gitlab-runner:

gitlab-runner run


Hingga muncul pesan berikut di gitlab:

🎉 You've registered a new runner!
Your runner is online and ready to run jobs.
To view the runner, go to Project › CI/CD Settings › Runners.
Klik View Runners

Helm: Package Manager untuk Kubernetes

Install di Ubuntu 20.04 dengan cara berikut:
$ curl -fsSL -o get_helm.sh https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-3
$ chmod 700 get_helm.sh
$ ./get_helm.sh

Coba dengan menjalankan:
$ helm version

version.BuildInfo{Version:"v3.18.3", GitCommit:"6838ebcf265a3842d1433956e8a622e3290cf324", GitTreeState:"clean", GoVersion:"go1.24.4"}

$ helm
The Kubernetes package manager
Common actions for Helm:
...

Menghubungkan Kubernetes Cluster dengan Gitlab


Komentar

Postingan populer dari blog ini

Kubernetes & Docker

Langkah-langkah Setup Minikube + Kubernetes 1. Install Tools Dasar Pastikan sudah install: Docker Kubectl Minikube Kubeadm (opsional, untuk manual cluster setup) 👉 Cek versinya: docker --version kubectl version --client kubeadm version minikube version 2. Konfigurasi Docker Supaya tidak perlu sudo tiap kali pakai docker: # Buat group docker (jika belum ada) sudo groupadd docker # Tambahkan user ke group docker sudo usermod -aG docker $USER ➡️ Logout & login ulang agar efektif. Coba tes: docker run hello-world 3. Aktifkan Service Docker & Containerd Supaya otomatis jalan saat boot: sudo systemctl enable docker.service sudo systemctl enable containerd.service Lalu start: sudo systemctl start docker.service sudo systemctl start containerd.service 4. Bersihkan Minikube Lama (opsional) Jika sebelumnya pernah setup Minikube: minikube delete --all 5. Jalankan Minikube Ada dua opsi: Driver Docker (disarankan): minikube start --driver=docker Default Driver : m...

Kubernetes

Kubernetes Untuk membuka web dari public antar host dengan mengatur konfigurasi berikut terlebih dahulu: Go to your virtual machine > settings > network > NAT > advanced > port-forwarding Add a new rule: host IP = 27.0.0.1 host port = any free one, e.g. I used 8000 guest IP = can be left empty guest port = 8001 (where proxy is listening to) Menggunakan Oracle VirtualBox. Berikut perintah-perintah yang digunakan untuk menjalankan dan menampilan Dashboard Kubernetes: $ minikube start $ minikube dashboard $ sudo netstat -tlpn $ kubectl proxy --address='0.0.0.0' &