Tutorial Instalasi GitLab CE pada Ubuntu Server 18.04

Tutorial instalasi GitLab Community Edition (CE) pada Ubuntu Server akan memberikan anda panduan praktis instalasi gitlab. Artikel ini akan fokus pada teknik instalasi hingga GitLab siap digunakan.

GitLab-LukmanLAB
GitLab Community Edition

Instalasi GitLab ini merupakan instalasi pada server fisik atau virtual machine, bukan instalasi pada Container. Seperti: Docker, LXC.

Metode yang digunakan pada artikel ini adalah metode instalasi GitLab Omnibus Package. Dipilih karena memang direkomendasikan oleh GitLab untuk mempercepat dan mempermudah instalasi.

Selain itu omnibus package juga memudahkan kita dalam melakukan upgrade dan menstabilkan sistem gitlab pada server.

Untuk instalasi pada Docker justru memudahkan anda, daripada instalasi pada host atau virtual machine. Kedepanya insyaallah akan dibuatkan tutorial instalasi gitlab pada Docker.

Persyaratan Sistem

Agar proses instalasi berjalan dengan lancar sebaiknya anda penuhi system requirements berikut:

  • Linux Ubuntu Server 18.04 (Alternatif: Debian, CentOS, OpenSUSE, Oracle, Scientific)
  • Processor 2 Core
  • RAM 4 GB
  • Harddisk 20 GB

Sistem persyaratan ini merupakan persyaratan minimal untuk dapat instal GitLab. Apabila anda gunakan untuk SCM pada perusahaan anda maka saya rekomendasikan menggunakan spesifikasi yang lebih tinggi.

Processor, RAM dan HDD bisa ditingkatkan ke 4 Core / 16 GB RAM / 250GB SSD untuk merasakan performa yang lebih josh. Termasuk Bandwidth upload server yang dedicated min 10 Mbps. 😀 Baca persyaratan sistem lengkap disini.

Langkah-langkah Instalasi GitLab CE:

Setelah anda memenuhi persyaratan sistem minimal diatas, selanjutnya ikuti langkah-langkah intalasi gitlab berikut ini:

Step 1 – Update System

Pastikan anda terhubung dengan internet, semakin cepat kecepatan download server anda akan semakin cepat proses updating dan Installing.

$ sudo apt update

Step 2 – Instal SSH Server, Curl, CA-Certificates

SSH Server rata-rata secara default biasanya sudah terinstal, namun untuk memastikan anda dapat mengulangi instalasi ssh server dan paket curl, ca-certificates.

$ sudo apt-get install -y curl openssh-server ca-certificates

Step 3 – Instal Postfix

Postfix digunakan untuk MTA yang digunakan GitLab untuk mengirimkan Notifikasi ke Email User (Developers).

Sangat direkomendasikan instalasi paket ini agar sistem gitlab mampu mengirimkan email notifikasi atas aktifitas yang dilakukan oleh developer saat menggunakan GitLab.

$ sudo apt-get install -y postfix

Ketika ada pop-up option type configuration pilih saja: Internet Site.

Step 4 – Download Repository GitLab Omnibus Package dan Instalasi GitLab

Untuk dapat melakukan instalasi gitlab omnibus package anda perlu download repository gitlab-ce dan memasukkan ke file source list.

$ curl -sS https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.deb.sh | sudo bash

Instalasi GitLab

Instalasi GitLab meminta kita mendefinisikan “EXTERNAL_URL”. Bagian ini kita bisa menggunakan http atau https.

Note:
[+] Apabila server gitlab ini menggunakan ip publik, silahkan pointing domain / subdomain ke ip publik yang digunakan dan gunakan https. Omnibus package mampu request certificate Let’s Encrypt secara otomatis saat proses instalasi. PASTIKAN domain / subdomain terpointing dengan benar dan gitlab bisa diakses dari publik via http.

[+] Apabila server gitlab ini menggunakan ip privat (lokal), pakai saja http.

[+] Perhatikan juga koneksi SSH anda jika anda melakukan instalasi via remote. Saya rekomendasikan instalasinya via console langsung atau anda gunakan tools screen karena proses instalasi gitlab-ce cukup lama.

$ sudo EXTERNAL_URL="http://gitlab.lukmanlab.com" apt-get install gitlab-ce

Tunggu proses instalasi hingga selesai.

Setelah proses instalasi selesai silahkan akses GitLab anda dan atur password root. Login default GitLab adalah root, password yang diatur saat pertama selesai instalasi.

GitLab CE - Set Root Password
GitLab CE – Set Root Password

Selesai, selamat mencoba.

About Ahmad Lukman Hakim 70 Articles
Admin LUKMANLAB, Network Engineer, System Administrator.