Cara Memasang GitLab Community Edition (CE) 11.x di Ubuntu 18.04 LTS

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 Vultr Ubuntu 18.04 LTS x64 segar 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 server Ubuntu 18.04 LTS x64 Anda sebagai pengguna sudo.

Tambahkan partisi swap dan atur pengaturan swappiness

Saat menggunakan GitLab CE 11.x pada mesin dengan memori 4GB, Anda harus menyiapkan partisi swap 4GB untuk kelancaran:

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
sudo sed -i "1 i\203.0.113.1 gitlab.example.com gitlab" /etc/hosts

Anda dapat mengkonfirmasi hasilnya:

hostname
hostname -f

Ubah aturan firewall

Izinkan lalu lintas SSH, HTTP, dan HTTPS masuk

sudo ufw allow OpenSSH
sudo ufw allow http
sudo ufw allow https
sudo ufw enable

Perbarui sistem

sudo apt update
sudo apt upgrade -y && sudo shutdown -r now

Selama peningkatan, Anda mungkin diberitahu bahwa versi file konfigurasi grub yang saat ini diinstal telah dimodifikasi secara lokal. Karena kami sebenarnya tidak bertanggung jawab atas modifikasi, gunakan UPpanah untuk menyorot install the package maintainer's versionopsi, dan kemudian tekan ENTER.

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 apt install -y curl openssh-server ca-certificates

Juga, jika Anda ingin menggunakan Postfix untuk mengirim pesan notifikasi, Anda perlu menginstal Postfix:

sudo apt install -y postfix

Selama instalasi, layar konfigurasi mungkin muncul:

  1. Tekan TABuntuk menyorot <OK>tombol di layar pertama, lalu tekan ENTER.
  2. Pilih Internet Sitedan tekan ENTER.
  3. Untuk mail nameisian, masukkan FQDN server Anda gitlab.example.comdan tekan ENTER.
  4. Jika layar lain muncul, tekan ENTERuntuk menerima pengaturan default.

Mulai dan aktifkan layanan Postfix:

sudo systemctl enable postfix.service
sudo systemctl start postfix.service

Ubah aturan firewall untuk Postfix:

sudo ufw allow Postfix
sudo ufw allow 'Postfix SMTPS'
sudo ufw allow 'Postfix Submission'

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 APT dan kemudian instal GitLab CE

Atur repositori GitLab CE APT di sistem Anda:

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

Selanjutnya, instal GitLab CE 11.x:

sudo EXTERNAL_URL="http://gitlab.example.com" apt 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 berikut 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'] = ['[email protected]']

Simpan dan keluar:

:wq!

Mengkonfigurasi ulang GitLab CE menggunakan pengaturan yang diperbarui:

sudo gitlab-ctl reconfigure

Konfigurasi ulang mungkin perlu waktu.

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.



Leave a Comment

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.

Cara Memasang Graylog Server pada CentOS 7

Cara Memasang Graylog Server pada CentOS 7

Menggunakan Sistem yang Berbeda? Graylog server adalah perangkat lunak manajemen log sumber terbuka siap pakai perusahaan. Ia mengumpulkan log dari berbagai sumber dan menganalisis

Cara Memasang Anchor CMS pada Fedora 26 LAMP VPS

Cara Memasang Anchor CMS pada Fedora 26 LAMP VPS

Menggunakan Sistem yang Berbeda? Anchor CMS adalah Content Engine System (CMS) Blog Engine yang super-sederhana dan sangat ringan, gratis, dan terbuka

Siapkan Berbagi NFS di Debian

Siapkan Berbagi NFS di Debian

NFS adalah sistem file berbasis jaringan yang memungkinkan komputer untuk mengakses file di seluruh jaringan komputer. Panduan ini menjelaskan bagaimana Anda dapat mengekspos folder melalui NF

Cara Memasang GitBucket di Ubuntu 16.04

Cara Memasang GitBucket di Ubuntu 16.04

Panduan ini mencakup instalasi dasar dan pengaturan GitBucket untuk instance Vultr yang menjalankan Ubuntu 16.04, dan mengasumsikan bahwa Anda menjalankan perintah sebagai

Cara Memasang Directus 6.4 CMS pada Fedora 26 LAMP VPS

Cara Memasang Directus 6.4 CMS pada Fedora 26 LAMP VPS

Menggunakan Sistem yang Berbeda? Directus 6.4 CMS adalah Headless Content Management System (CMS) yang kuat dan fleksibel, gratis dan open source yang menyediakan pengembang

Cara Memasang Mattermost 5.2 di Ubuntu 16.04

Cara Memasang Mattermost 5.2 di Ubuntu 16.04

Menggunakan Sistem yang Berbeda? Mattermost adalah sumber terbuka, alternatif yang di-host-sendiri ke layanan pesan Slack SAAS. Dengan kata lain, dengan Mattermost, Anda ca

Menyiapkan Server TeamTalk di Linux

Menyiapkan Server TeamTalk di Linux

TeamTalk adalah sistem konferensi yang memungkinkan pengguna untuk memiliki percakapan audio / video berkualitas tinggi, obrolan teks, transfer file, dan berbagi layar. Itu saya

Menggunakan kunci SSH Anda untuk masuk ke pengguna non-root

Menggunakan kunci SSH Anda untuk masuk ke pengguna non-root

Vultr menyediakan fitur yang memungkinkan Anda untuk melakukan pra-instal kunci SSH setelah membuat instance baru. Ini memungkinkan Anda untuk mengakses pengguna root server, namun, th

Cara Menginstal PostgreSQL 11.1 Di Arch Linux

Cara Menginstal PostgreSQL 11.1 Di Arch Linux

Prasyarat Server Vultr berjalan terbaru Arch Linux (lihat artikel ini.) Akses Sudo. Perintah yang diperlukan untuk dijalankan karena root diawali oleh #, dan satu

Cara Memasang Manajer File Terminal Ranger di Linux

Cara Memasang Manajer File Terminal Ranger di Linux

Ranger adalah manajer file berbasis baris perintah dengan binding kunci VI. Ini memberikan antarmuka kutukan minimalis dan bagus dengan tampilan pada hierarki direktori

Cara Memasang Redmine di Ubuntu 16.04

Cara Memasang Redmine di Ubuntu 16.04

Menggunakan Sistem yang Berbeda? Redmine adalah alat manajemen proyek berbasis web gratis dan open source. Itu ditulis dalam Ruby on Rails dan mendukung banyak database

Cara Membangun Brotli Dari Sumber di Ubuntu 18.04 LTS

Cara Membangun Brotli Dari Sumber di Ubuntu 18.04 LTS

Menggunakan Sistem yang Berbeda? Brotli adalah metode kompresi baru dengan rasio kompresi yang lebih baik daripada GZIP. Kode sumbernya dihosting secara publik di Githu ini

Atur Akun Pengguna khusus SFTP di CentOS 7

Atur Akun Pengguna khusus SFTP di CentOS 7

Pada kesempatan tertentu, Administrator Sistem mungkin perlu membuat akun pengguna dan membatasi akses mereka untuk hanya mengelola file mereka sendiri melalui sFTP, tetapi tidak

Menggunakan Tampilan MySQL pada Debian 7

Menggunakan Tampilan MySQL pada Debian 7

Pendahuluan MySQL memiliki fitur hebat yang dikenal sebagai tampilan. Tampilan adalah kueri yang disimpan. Pikirkan mereka sebagai alias untuk permintaan yang panjang. Dalam panduan ini,

Cara Memasang Nginx 1.14 Di Arch Linux

Cara Memasang Nginx 1.14 Di Arch Linux

Prasyarat Server Vultr berjalan terbaru Arch Linux (lihat artikel ini.) Akses Sudo. Perintah yang harus dijalankan sebagai root diawali oleh #. Th

Nonaktifkan atau Batasi Login Root melalui SSH di Linux

Nonaktifkan atau Batasi Login Root melalui SSH di Linux

Mengizinkan login root melalui SSH umumnya dianggap sebagai praktik keamanan yang buruk di seluruh industri teknologi. Sebagai gantinya, Anda dapat melakukan administrativ sensitif

Cara Memasang Seafile Server di Ubuntu 16.10

Cara Memasang Seafile Server di Ubuntu 16.10

Menggunakan Sistem yang Berbeda? Seafile (versi komunitas) adalah solusi sinkronisasi dan berbagi file sumber gratis dan terbuka yang mirip dengan ownCloud. Sepanjang kecerdasan

Cara Memasang Thelia 2.3 pada Debian 9

Cara Memasang Thelia 2.3 pada Debian 9

Menggunakan Sistem yang Berbeda? Thelia adalah alat sumber terbuka untuk membuat situs web e-bisnis dan mengelola konten online yang ditulis dalam PHP. Kode sumber thelia i

Cara Memasang MongoDB 4.0 di Arch Linux

Cara Memasang MongoDB 4.0 di Arch Linux

Prasyarat Server Vultr berjalan terbaru Arch Linux (lihat artikel ini) Akses Sudo: Perintah yang diperlukan untuk dijalankan karena root diawali oleh #, dan satu

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

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.

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.

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.

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?

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.

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.