Cara Memasang GitLab Community Edition (CE) 11.x pada CentOS 7

Sejak GitHub diakuisisi oleh Microsoft, beberapa pengembang telah merencanakan untuk memigrasi repositori kode mereka sendiri dari github.com ke solusi alternatif yang di-host-sendiri. Edisi Komunitas GitLab (CE) adalah pilihan paling umum. Sebagai solusi canggih dan fleksibel, GitLab CE dapat digunakan dengan berbagai metode, tetapi hanya metode yang direkomendasikan secara resmi, instalasi paket Omnibus, yang akan dibahas di sini.

Prasyarat

  • Contoh server baru Vultr CentOS 7 dengan memori minimal 4GB. 8GB atau lebih direkomendasikan untuk melayani hingga 100 pengguna. Katakan alamat IPv4-nya 203.0.113.1.
  • Seorang pengguna sudo .
  • Domain gitlab.example.comdiarahkan ke instance yang disebutkan di atas.

Catatan: Saat menggunakan instance server Anda sendiri, pastikan untuk mengganti semua nilai contoh dengan nilai aktual.

Langkah 1: Lakukan tugas dasar untuk hosting GitLab CE

Jalankan terminal SSH, dan masuk ke instance server CentOS 7 Anda sebagai pengguna sudo.

Tambahkan partisi swap dan atur pengaturan swappiness

Saat menggunakan GitLab CE 11.x pada mesin dengan memori 4GB, diperlukan untuk menyiapkan partisi swap 4GB agar berjalan lancar.

sudo dd if=/dev/zero of=/swapfile count=4096 bs=1M
sudo chmod 600 /swapfile
sudo mkswap /swapfile
sudo swapon /swapfile
echo '/swapfile   none    swap    sw    0   0' | sudo tee -a /etc/fstab
free -m

Catatan: Jika Anda menggunakan ukuran server yang berbeda, ukuran partisi swap dapat bervariasi.

Untuk tujuan kinerja sistem, disarankan untuk mengkonfigurasi pengaturan swappiness kernel ke nilai yang rendah seperti 10:

echo 'vm.swappiness=10' | sudo tee -a /etc/sysctl.conf
sudo sysctl -p
cat /proc/sys/vm/swappiness

Output dari catperintah tersebut adalah 10.

Atur nama host mesin dan nama domain yang memenuhi syarat (FQDN)

Gunakan perintah berikut untuk mengatur nama host gitlab,, dan FQDN gitlab.example.com,, untuk mesin:

sudo hostnamectl set-hostname gitlab
cat <<EOF | sudo tee /etc/hosts
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
203.0.113.1 gitlab.example.com gitlab
EOF

Anda dapat mengkonfirmasi hasilnya:

hostname
hostname -f

Ubah aturan firewall

Izinkan lalu lintas HTTP dan HTTPS masuk:

sudo firewall-cmd --permanent --add-service=http
sudo firewall-cmd --permanent --add-service=https
sudo systemctl reload firewalld.service

Instal repo EPEL YUM dan kemudian perbarui sistem

sudo yum install -y epel-release
sudo yum -y update && sudo shutdown -r now

Ketika sistem menyala dan berjalan kembali, masuk kembali sebagai pengguna sudo yang sama untuk melanjutkan.

Langkah 2: Instal dependensi yang diperlukan

Sebelum menginstal GitLab CE, Anda harus menginstal dependensi yang diperlukan:

sudo yum install -y curl policycoreutils-python openssh-server openssh-clients

Juga, jika Anda ingin menggunakan Postfix untuk mengirim pesan notifikasi, Anda perlu menginstal Postfix dan memodifikasi aturan firewall sebagai berikut:

sudo yum install -y postfix
sudo systemctl enable postfix.service
sudo systemctl start postfix.service
sudo firewall-cmd --permanent --add-service=smtp
sudo firewall-cmd --permanent --add-service=pop3
sudo firewall-cmd --permanent --add-service=imap
sudo firewall-cmd --permanent --add-service=smtps
sudo firewall-cmd --permanent --add-service=pop3s
sudo firewall-cmd --permanent --add-service=imaps
sudo firewall-cmd --reload

Setelah Postfix diinstal, Anda perlu mengkonfigurasi Postfix dengan mengedit file konfigurasi utamanya /etc/postfix/main.cfsesuai dengan pengaturan server Anda yang sebenarnya.

Catatan: Selain instruksi di atas, Anda perlu mengirimkan tiket dukungan untuk membatalkan blok default Vultr pada port SMTP 25.

Atau, jika Anda ingin menggunakan solusi perpesanan lain, lewati saja menginstal Postfix dan pilih untuk menggunakan server SMTP eksternal setelah GitLab CE diinstal.

Langkah 3: Atur repo GitLab RPM dan kemudian instal GitLab CE

Atur repositori GitLab CE RPM di sistem Anda:

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

Selanjutnya, instal GitLab CE 11.x:

sudo EXTERNAL_URL="http://gitlab.example.com" yum install -y gitlab-ce

Instalasi mungkin memakan waktu cukup lama.

Terakhir, arahkan browser web favorit Anda ke http://gitlab.example.com, dan kemudian kirimkan kata sandi baru seperti yang diminta untuk menyelesaikan instalasi.

Mulai sekarang, gunakan kredensial di bawah ini untuk masuk sebagai administrator:

  • Nama pengguna: root
  • Kata sandi: <your-new-password>

Langkah 4: Aktifkan akses HTTPS dengan mengintegrasikan sertifikat SSL Mari Kita Enkripsi

Untuk saat ini, Anda telah berhasil menginstal GitLab CE 11.x di server Anda, dan pengguna sudah dapat mengunjungi situs menggunakan protokol HTTP. Untuk tujuan keamanan, disarankan untuk mengaktifkan akses HTTPS ke server GitLab Anda dengan mengintegrasikan sertifikat SSL Enkripsi Ayo.

Gunakan vieditor untuk membuka file konfigurasi GitLab CE:

sudo vi /etc/gitlab/gitlab.rb

Temukan dua baris berikut:

external_url 'http://gitlab.example.com'
# letsencrypt['contact_emails'] = [] # This should be an array of email addresses to add as contacts

Ganti sesuai dengan itu:

external_url 'https://gitlab.example.com'
letsencrypt['contact_emails'] = ['admin@example.com']

Simpan dan keluar:

:wq!

Jalankan perintah berikut untuk mengkonfigurasi ulang GitLab CE menggunakan pengaturan yang diperbarui:

sudo gitlab-ctl reconfigure

Konfigurasi ulang akan memakan waktu cukup lama.

Setelah konfigurasi ulang selesai, semua pengguna akan dipaksa untuk menggunakan protokol HTTPS ketika mengakses situs GitLab.

Catatan: Setelah beralih dari HTTP ke HTTPS, cookie lawas dapat menyebabkan kesalahan GitLab 422. Menghapus cookie memperbaiki masalah ini.

Tinggalkan Komentar

Cara Memasang Panel Kontrol Hosting Mudah di Ubuntu 16.04

Cara Memasang Panel Kontrol Hosting Mudah di Ubuntu 16.04

Pelajari langkah-langkah untuk memasang Panel Kontrol Hosting Mudah (EHCP) di Ubuntu 16.04 dengan panduan ini.

Wawasan tentang 26 Teknik Analisis Data Besar: Bagian 1

Wawasan tentang 26 Teknik Analisis Data Besar: Bagian 1

Wawasan tentang 26 Teknik Analisis Data Besar: Bagian 1

Fungsionalitas Lapisan Arsitektur Referensi Big Data

Fungsionalitas Lapisan Arsitektur Referensi Big Data

Baca blog untuk mengetahui berbagai lapisan dalam Arsitektur Big Data dan fungsinya dengan cara yang paling sederhana.

6 Hal yang Sangat Menggila dari Nintendo Switch

6 Hal yang Sangat Menggila dari Nintendo Switch

Banyak dari Anda tahu Switch keluar pada Maret 2017 dan fitur-fitur barunya. Bagi yang belum tahu, kami sudah menyiapkan daftar fitur yang membuat 'Switch' menjadi 'gadget yang wajib dimiliki'.

Janji Teknologi Yang Masih Belum Ditepati

Janji Teknologi Yang Masih Belum Ditepati

Apakah Anda menunggu raksasa teknologi untuk memenuhi janji mereka? periksa apa yang belum terkirim.

Bagaimana AI Dapat Membawa Otomatisasi Proses ke Tingkat Selanjutnya?

Bagaimana AI Dapat Membawa Otomatisasi Proses ke Tingkat Selanjutnya?

Baca ini untuk mengetahui bagaimana Kecerdasan Buatan menjadi populer di antara perusahaan skala kecil dan bagaimana hal itu meningkatkan kemungkinan untuk membuat mereka tumbuh dan memberi keunggulan pada pesaing mereka.

Singularitas Teknologi: Masa Depan Peradaban Manusia yang Jauh?

Singularitas Teknologi: Masa Depan Peradaban Manusia yang Jauh?

Saat Sains Berkembang dengan kecepatan tinggi, mengambil alih banyak upaya kita, risiko menundukkan diri kita pada Singularitas yang tidak dapat dijelaskan juga meningkat. Baca, apa arti singularitas bagi kita.

CAPTCHA: Berapa Lama Itu Bisa Tetap Menjadi Teknik yang Layak Untuk Perbedaan Human-AI?

CAPTCHA: Berapa Lama Itu Bisa Tetap Menjadi Teknik yang Layak Untuk Perbedaan Human-AI?

CAPTCHA telah berkembang cukup sulit bagi pengguna untuk dipecahkan dalam beberapa tahun terakhir. Apakah itu akan tetap efektif dalam deteksi spam dan bot di masa mendatang?

Telemedicine Dan Perawatan Kesehatan Jarak Jauh: Masa Depan Ada Di Sini

Telemedicine Dan Perawatan Kesehatan Jarak Jauh: Masa Depan Ada Di Sini

Apa itu telemedicine, perawatan kesehatan jarak jauh dan dampaknya terhadap generasi mendatang? Apakah itu tempat yang bagus atau tidak dalam situasi pandemi? Baca blog untuk menemukan tampilan!

Pernahkah Anda Bertanya-tanya Bagaimana Hacker Menghasilkan Uang?

Pernahkah Anda Bertanya-tanya Bagaimana Hacker Menghasilkan Uang?

Anda mungkin pernah mendengar bahwa peretas menghasilkan banyak uang, tetapi pernahkah Anda bertanya-tanya bagaimana cara mereka mendapatkan uang sebanyak itu? mari berdiskusi.