Masalah Gitlab Runner & Solusinya

Berikut catatan permasalahan serta solusinya saat instalasi & menjalankan gitlab runner:

  1. Dapetin token gitlab-runner itu bukan pake personal token tapi pake token di Groups->Setting->CI/CD->Group Runners

    Cuma Owner dari Group yang Bisa Bikin Token ini

    Cuma Owner dari Group yang Bisa Bikin Token ini

  2. Saat registrasi gitlab-runner, gunakan docker sebagai agent (bukan docker-ssh, docker+machine, dll), itu yang biasanya saya gunakan dari awal dan paling mudah

  3. Docker based gitlab-runner? ga dulu kalau saya. Saya cuma butuh 1 runner, saya pilih cara paling gampang aja pake installer

  4. Error cannot connect to Docker daemon at tcp://docker:2375. Is the docker daemon running

    Ada dua penyebab error ini

    A. Karena service docker ga jalan. Solusi, yang pertama tinggal jalanin service docker nya service docker start

    B. Karena si gitlab-runner ga bisa akses docker socket. Solusi, tambahin volumes = ["/var/run/docker.sock:/var/run/docker.sock", "/cache"] di config.toml file.

  5. error during connect: Post http://docker:2375/vx.xx/auth: dial tcp: lookup docker on xxx.xxx.xxx.xxx:53: no such host.

Solusinya adalah dengan menambahkan/mengganti line berikut di file config.toml

[runners.docker]
image = docker:stable
privileged = true
  1. Hapus gitlab-runner yang udah ga aktif tanpa harus disable satu-satu di repository. Solusi dari stackoverflow, buat satu file, vim gitlab-runner-remover.py isikan dengan
import os
import requests

GITLAB_AUTH_TOKEN = "token"
RUNNER_ID = "runnerID yang pake angka aja, bukan yang alpha numeric"

headers = {"PRIVATE-TOKEN": GITLAB_AUTH_TOKEN}

r = requests.get(f"https://gitlab.com/api/v4/runners/{RUNNER_ID}", headers=headers)
runner_data = r.json()

for project in runner_data.get("projects", []):
    r = requests.delete(
        f"https://gitlab.com/api/v4/projects/{project['id']}/runners/{RUNNER_ID}",
        headers=headers,
    )
    if not r.ok:
        print("Encountered an error deleting runner from project:", r.json())

r = requests.delete(f"https://gitlab.com/api/v4/runners/{RUNNER_ID}", headers=headers)
if not r.ok:
    print("Encountered an error deleting runner:", r.json())

Tinggal jalanin python gitlab-runner-remover.py

Ada Error/Warning, Tapi Beneran ke Hapus Runner nya dari Semua Project

Ada Error/Warning, Tapi Beneran ke Hapus Runner nya dari Semua Project

  1. Error Permission denied (publickey). ERROR: Job failed: exit code 255. Cara mengatasi nya tambahan pubkey server itu sendiri ke file authorized_keys di server itu juga cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys

    Error 255 Gitlab Runner

    Error 255 Gitlab Runner

  2. Reserved, buat lanjutin

Referensi:

Stackoverflow - Docker login no such host error

Stackoverflow - How do I delete/unregister a GitLab runner.