“Install dan Konfigurasi GitLab di Debian 10”
Kita perlu memahami beberapa terminologi. Kita sering menemukan istilah-istilah seperti Git, Gitlab, GitHub, dan Bitbucket. Mari kita lihat definisi dari semua istilah tersebut.
- Git adalah sistem versi kode sumber yang memungkinkan Anda melacak perubahan secara lokal dan mendorong atau menarik perubahan dari remote resources.
- GitLab, GitHub, dan Bitbucket : layanan yang menyediakan remote access ke Git repositories. Selain meng-hosting kode Anda, layanan ini menyediakan fitur tambahan yang dirancang untuk membantu mengelola siklus pengembangan software. Fitur-fitur tambahan ini termasuk mengelola pembagian kode antara orang-orang yang berbeda, bug tracking, wiki space, dan alat-alat lain untuk ‘social coding’
- GitHub adalah layanan gratis yang tersedia untuk umum yang membutuhkan semua kode (kecuali Anda memiliki akun berbayar) dibuat terbuka. Siapa pun dapat melihat kode yang Anda push ke GitHub dan menawarkan saran untuk peningkatan. GitHub saat ini meng-host kode sumber untuk puluhan ribu proyek open source.
GitLab adalah layanan mirip github yang dapat digunakan organisasi untuk menyediakan manajemen internal git repositories. Ini adalah sistem manajemen Git-repository yang di-host-sendiri yang menjaga code private pengguna dan dapat dengan mudah menyebarkan perubahan kode.
Fitur
- GitLab hosts proyek software (private) Anda secara gratis.
- GitLab Adalah platform untuk mengelola Git repositories.
- GitLab menawarkan private repositories dan free public, pelacakan masalah, dan wiki.
- GitLab adalah user friendly web interface layer di atas Git, yang meningkatkan kecepatan bekerja dengan Git.
- GitLab menyediakan sistem Continuous Integration (CI) untuk mengelola proyek dan menyediakan user interface bersama dengan fitur-fitur lain dari GitLab.
Keuntungan
- GitLab menyediakan versi GitLab Community Edition bagi pengguna untuk menemukan di mana server kode mereka present.
- GitLab menyediakan public repositories dan private tanpa batas secara gratis.
- The Snippetsection dapat membagikan sejumlah kecil kode dari suatu proyek, alih-alih membagikan seluruh proyek.
Kekurangan
- Sambil mendorong dan menarik repositori, itu tidak secepat GitHub.
- GitLab interface akan membutuhkan waktu saat berpindah dari satu halaman ke halaman lainnya.
Installasi
ssh root@server_ip
2. Jika sudah terlanjur install apache web server di stop dahulu service nya
systemctl stop apache2
systemctl disable apache2
sudo apt-get update
sudo apt-get upgrade -y
sudo apt -y install curl vim openssh-server ca-certificates
4. install postfix
apt-get install postfix -y
5. add package
curl https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.deb.sh | sudo bash
6. install gitlab dengan domain
sudo EXTERNAL_URL="https://hendro-wibiksono.com" apt install gitlab-ce
7. enable SSL letsencrypt
nano /etc/gitlab/gitlab.rb
letsencrypt['enable'] = true
letsencrypt['contact_emails'] = ['admin@example.com'] # This should be an array of email addresses to add as contacts
letsencrypt['auto_renew'] = true
letsencrypt['auto_renew_hour'] = 3
letsencrypt['auto_renew_day_of_month'] = "*/7"
8. reconfig
gitlab-ctl reconfigure
9. Setelah selesai cek password dengan user root
more /etc/gitlab/initial_root_password
10. Hapus instalasi GitLab
- Untuk menghapus akun pengguna dan group yang dibuat oleh GitLab, sebelum menghapus paket omnibus gitlab (dengan
dpkg
atauyum
), eksekusisudo gitlab-ctl remove-accounts
- Hapus semua data omnibus-gitlab
sudo gitlab-ctl cleanse
- Untuk menghapus instalasi GitLab, dengan mempertahankan data (repositori, database, konfigurasi), jalankan perintah berikut:
# Stop gitlab and remove its supervision process
sudo systemctl stop gitlab-runsvdir
sudo systemctl disable gitlab-runsvdir
sudo rm /usr/lib/systemd/system/gitlab-runsvdir.service
sudo systemctl daemon-reload
sudo gitlab-ctl uninstall
# Debian/Ubuntu
sudo apt remove gitlab-ce