Debian 9 Üzerinde GitLab Community Edition (CE) 11.x Kurulumu

GitHub, Microsoft tarafından satın alındığından, oldukça az sayıda geliştirici kendi kod havuzlarını github.com'dan alternatif bir kendi kendine barındırılan çözüme taşımayı planladı. GitLab Topluluk Sürümü (CE) en yaygın seçimdir.

Gelişmiş ve esnek bir çözüm olarak GitLab CE, çeşitli yöntemler kullanılarak dağıtılabilir, ancak burada yalnızca resmi olarak önerilen yöntem, Omnibus paket kurulumu ele alınacaktır.

Ön şartlar

  • En az 4GB belleğe sahip yeni bir Vultr Debian 9 x64 sunucu örneği. En fazla 100 kullanıcıya hizmet vermek için 8 GB veya daha fazlası önerilir. Diyelim ki IPv4 adresi 203.0.113.1.
  • Bir sudo kullanıcısı .
  • gitlab.example.comYukarıda belirtilen örneğe işaret eden bir alan .

Not: Kendi sunucu örneğinizde dağıtım yaparken, tüm örnek değerleri gerçek değerlerle değiştirdiğinizden emin olun.

Adım 1: GitLab CE'yi barındırmak için temel görevleri gerçekleştirin

Bir SSH terminalini başlatın ve Debian 9 x64 sunucu örneğinizde sudo kullanıcısı olarak oturum açın.

Bir takas bölümü ekleyin ve takas ayarını değiştirin

GitLab CE 11.x'i 4 GB belleğe sahip bir makineye dağıtırken, düzgün çalışması için 4 GB takas bölümü oluşturulması gerekir.

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

Not: Farklı bir sunucu boyutu kullanıyorsanız, takas bölümünün boyutu değişebilir.

Sistem performansı amacıyla, çekirdeğin takas ayarının aşağıdaki gibi düşük bir değere yapılandırılması önerilir 10:

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

catKomutun çıktısı olacaktır 10.

Makinenin ana bilgisayar adını ve tam etki alanı adını (FQDN) ayarlayın

Makine için bir ana bilgisayar adı gitlabve bir FQDN ayarlamak için aşağıdaki komutları kullanın gitlab.example.com:

sudo hostnamectl set-hostname gitlab
sudo sed -i "1 i\203.0.113.1 gitlab.example.com gitlab" /etc/hosts

Sonuçları onaylayabilirsiniz:

hostname
hostname -f

Güvenlik duvarı kurallarını ayarlama

Bir web sitesini çalıştırmak için makul güvenlik duvarı kuralları oluşturun:

sudo iptables -F
sudo iptables -X
sudo iptables -Z
sudo iptables -A INPUT -s $(echo $(w -h ${USER}) | cut -d " " -f3) -p tcp --dport 22 -j ACCEPT
sudo iptables -A INPUT -i lo -j ACCEPT
sudo iptables -A INPUT -d 127.0.0.0/8 -j REJECT
sudo iptables -A INPUT -p tcp ! --syn -m state --state NEW -j DROP
sudo iptables -A INPUT -p tcp --tcp-flags ALL NONE -j DROP
sudo iptables -A INPUT -p tcp --tcp-flags ALL ALL -j DROP
sudo iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 80 -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 443 -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 22 -j ACCEPT
sudo iptables -A INPUT -p icmp --icmp-type echo-request -j ACCEPT
sudo iptables -P INPUT DROP
sudo iptables -P OUTPUT ACCEPT
sudo iptables -P FORWARD DROP

Yukarıdaki tüm ayarlar hemen geçerli olacaktır. İncelenmek üzere listelemek için aşağıdaki komutu kullanın:

sudo iptables -L -n

Tüm iptables kurallarını kalıcı hale getirerek iptable-persistentmevcut tüm iptables kurallarını bir dosyaya kaydetmek için aracı kullanın /etc/iptables/rules.v4:

sudo apt install -y iptables-persistent

Yükleme sırasında, geçerli IPv4 / IPv6 kurallarını kaydetmek isteyip istemediğiniz sorulacaktır. Basın ENTERiki kez her iki akım IPv4 ve IPv6 kurallarını kaydetmek /etc/iptables/rules.v4ve /etc/iptables/rules.v6.

IPv4 kurallarını daha sonra güncellemeye çalışırsanız, güncellemenizi kaydetmek için aşağıdakileri kullanın:

sudo bash -c 'iptables-save > /etc/iptables/rules.v4'

Sistemi güncelleyin

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

Sistem tekrar çalışmaya başladığında, devam etmek için aynı sudo kullanıcısı olarak tekrar oturum açın.

2. Adım: Gerekli bağımlılıkları yükleyin

GitLab CE'yi yüklemeden önce gerekli bağımlılıkları yüklemeniz gerekir:

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

Ayrıca, bildirim iletileri göndermek için Postfix'i kullanmak istiyorsanız Postfix'i yüklemeniz gerekir:

sudo apt install -y postfix

Yükleme sırasında bir yapılandırma ekranı görünebilir:

  1. Basın TABvurgulamak için <OK>ilk ekranda düğmesine ve ardından düğmesine basın ENTER.
  2. Öğesini seçin Internet Siteve düğmesine basın ENTER.
  3. İçin mail nametarla, giriş sunucunuzun FQDN, gitlab.example.comve basın ENTER.
  4. Başka ekranlar görünürse, ENTERvarsayılan ayarları kabul etmek için düğmesine basın .

Postfix hizmetini başlatın ve etkinleştirin:

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

Postfix için güvenlik duvarı kurallarını değiştirme:

sudo iptables -A INPUT -i eth0 -p tcp --dport 25 -m state --state NEW,ESTABLISHED -j ACCEPT
sudo iptables -A INPUT -i eth0 -p tcp --dport 143 -m state --state NEW,ESTABLISHED -j ACCEPT
sudo iptables -A INPUT -i eth0 -p tcp --dport 993 -m state --state NEW,ESTABLISHED -j ACCEPT
sudo iptables -A INPUT -i eth0 -p tcp --dport 110 -m state --state NEW,ESTABLISHED -j ACCEPT
sudo iptables -A INPUT -i eth0 -p tcp --dport 995 -m state --state NEW,ESTABLISHED -j ACCEPT
sudo bash -c 'iptables-save > /etc/iptables/rules.v4'

Postfix'i yükledikten sonra, ana yapılandırma dosyasını /etc/postfix/main.cfgerçek sunucu ayarlarınıza göre düzenleyerek Postfix'i yapılandırmanız gerekir .

Not: Yukarıdaki talimatlara ek olarak, Vultr'un SMTP bağlantı noktası 25'teki varsayılan bloğunu iptal etmek için bir destek bileti göndermeniz gerekir.

Alternatif olarak, başka bir mesajlaşma çözümü kullanmak istiyorsanız, Postfix'i yüklemeyi atlayın ve GitLab CE yüklendikten sonra harici bir SMTP sunucusu kullanmayı seçin.

Adım 3: GitLab APT deposunu kurun ve ardından GitLab CE'yi yükleyin

Sisteminize GitLab CE APT deposunu kurun:

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

Sonra GitLab CE 11.x'i yükleyin:

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

Kurulum biraz zaman alabilir.

Son olarak, favori web tarayıcınızın http://gitlab.example.comüzerine gelin ve yüklemeyi bitirmek için istendiği gibi yeni bir şifre gönderin.

Şu andan itibaren yönetici olarak oturum açmak için aşağıdaki kimlik bilgilerini kullanın:

  • Kullanıcı adı: root
  • Parola: <your-new-password>

Adım 4: Let's Encrypt SSL sertifikasını entegre ederek HTTPS erişimini etkinleştirin

Şimdilik, sunucu örneğinize GitLab CE 11.x'i başarıyla yüklediniz ve kullanıcılar HTTP protokolünü kullanarak siteyi zaten ziyaret edebilirler. Güvenlik nedeniyle, bir Let's Encrypt SSL sertifikası entegre ederek GitLab sunucunuza HTTPS erişimini etkinleştirmeniz önerilir.

viGitLab CE yapılandırma dosyasını açmak için düzenleyiciyi kullanın :

sudo vi /etc/gitlab/gitlab.rb

Aşağıdaki iki satırı bulun:

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

Bunları uygun şekilde değiştirin:

external_url 'https://gitlab.example.com'
letsencrypt['contact_emails'] = ['[email protected]']

Kaydet ve çık:

:wq!

GitLab CE'yi güncellenmiş ayarları kullanarak yeniden yapılandırın:

sudo gitlab-ctl reconfigure

Yeniden yapılandırma biraz zaman alabilir.

Yeniden yapılandırma tamamlandıktan sonra, GitLab sitesine erişirken tüm kullanıcılar HTTPS protokolünü kullanmak zorunda kalacaktır.

Not: HTTP'den HTTPS'ye geçtikten sonra, eski çerezler GitLab 422 hatasına neden olabilir. Çerezleri temizlemek bu sorunu çözer.



Leave a Comment

Debianda NFS Paylaşımı Ayarla

Debianda NFS Paylaşımı Ayarla

NFS, bilgisayarların bilgisayar ağı üzerindeki dosyalara erişmesine izin veren ağ tabanlı bir dosya sistemidir. Bu kılavuz, klasörleri NF üzerinden nasıl açığa çıkarabileceğinizi açıklar

Debian 9da Diaspora ile Sosyal Ağınızı Kurun

Debian 9da Diaspora ile Sosyal Ağınızı Kurun

Farklı Bir Sistem mi Kullanıyorsunuz? Diaspora gizliliğe duyarlı, açık kaynaklı bir sosyal ağdır. Bu derste, bir Diaspora posının nasıl kurulacağını ve yapılandırılacağını öğreneceksiniz

Debian 9 Üzerinde Yakıt CMS Kurulumu

Debian 9 Üzerinde Yakıt CMS Kurulumu

Farklı Bir Sistem mi Kullanıyorsunuz? Fuel CMS, CodeIgniter tabanlı bir içerik yönetim sistemidir. Kaynak kodu GitHubda barındırılmaktadır. Bu kılavuz size

SSL / TLS ile vsFTPd Nasıl Güvenli Hale Getirilir

SSL / TLS ile vsFTPd Nasıl Güvenli Hale Getirilir

Çok Güvenli FTP arka plan programı, ya da sadece vsFTPd, özelleştirme yeteneği olan hafif bir yazılım parçasıdır. Bu derste bir müttefikimiz olacak

Debian 9 Üzerinde Thelia 2.3 Kurulumu

Debian 9 Üzerinde Thelia 2.3 Kurulumu

Farklı Bir Sistem mi Kullanıyorsunuz? Thelia, e-iş web siteleri oluşturmak ve PHP ile yazılmış çevrimiçi içeriği yönetmek için açık kaynaklı bir araçtır. Thelia kaynak kodu i

Debianda Chroot Oluşturma

Debianda Chroot Oluşturma

Bu makale size Debianda nasıl bir cezaevi hapishane kurulacağını öğretecek. Debian 7.x kullandığınızı varsayıyorum. Debian 6 veya 8 çalıştırıyorsanız, bu işe yarayabilir, bu

Debian 9 InvoicePlane Nasıl Kurulur

Debian 9 InvoicePlane Nasıl Kurulur

Farklı Bir Sistem mi Kullanıyorsunuz? InvoicePlane ücretsiz ve açık kaynaklı bir faturalandırma uygulamasıdır. Kaynak kodu bu Github deposunda bulunabilir. Bu rehber

Debian 9u Debian 10a Yükseltme

Debian 9u Debian 10a Yükseltme

Giriş Debian 10 (Buster), Debian 9un (Stretch) halefidir. 6 Temmuz 2019da piyasaya sürüldü. Bu derste, bir var olanı yükselteceğiz

Debian 9 LAMP VPS Arka Plan CMS 1.8.0 Kurulumu

Debian 9 LAMP VPS Arka Plan CMS 1.8.0 Kurulumu

Farklı Bir Sistem mi Kullanıyorsunuz? Backdrop CMS 1.8.0, basit ve esnek, mobil uyumlu, ücretsiz ve açık kaynaklı bir İçerik Yönetim Sistemidir (CMS)

Debian 9 Üzerinde BookStack Kurulumu

Debian 9 Üzerinde BookStack Kurulumu

Farklı Bir Sistem mi Kullanıyorsunuz? BookStack, bilgileri düzenlemek ve depolamak için basit, kendi kendine barındırılan, kullanımı kolay bir platformdur. BookStack tamamen ücretsiz ve açık

Ubuntu ve CentOS İçin Daha İyi İzleme Araçları

Ubuntu ve CentOS İçin Daha İyi İzleme Araçları

Giriş Linux sistemleri, süreçleri ve disk alanını izlemeye yardımcı olan varsayılan olarak top, df ve du gibi izleme araçlarıyla birlikte gelir. Çoğu zaman, onlar ar

CentOS 7, Ubuntu 16.04 ve Debian 9da Golang 1.8.3 Kurulumu

CentOS 7, Ubuntu 16.04 ve Debian 9da Golang 1.8.3 Kurulumu

Golang, Google tarafından geliştirilen bir programlama dilidir. Çok yönlülüğü, sadeliği ve güvenilirliği sayesinde Golang en popüler topluluklardan biri haline geldi

Debian 9a Cıvata CMS Takma (Uzatma)

Debian 9a Cıvata CMS Takma (Uzatma)

Farklı Bir Sistem mi Kullanıyorsunuz? Bolt PHP ile yazılmış açık kaynaklı bir CMSdir. Cıvata kaynak kodu GitHubda barındırılıyor. Bu kılavuz size Bolt CMnin nasıl kurulacağını gösterecektir

Munin ile Debian Sunucu Durumunu İzleme

Munin ile Debian Sunucu Durumunu İzleme

Munin, makinenizdeki süreçleri ve kaynakları araştırmak için bir izleme aracıdır ve bilgileri bir web arayüzü aracılığıyla grafiklerde sunar. Aşağıdaki kullanın

Debian 10da Apachede TLS 1.3ü Etkinleştirme

Debian 10da Apachede TLS 1.3ü Etkinleştirme

Farklı Bir Sistem mi Kullanıyorsunuz? TLS 1.3, 2018de RFC 8446da önerilen bir standart olarak yayınlanan Taşıma Katmanı Güvenliği (TLS) protokolünün bir sürümüdür

Debian 9 Üzerinde PyroCMS Kurulumu

Debian 9 Üzerinde PyroCMS Kurulumu

Farklı Bir Sistem mi Kullanıyorsunuz? PyroCMS, PHP ile yazılmış açık kaynaklı bir CMSdir. PyroCMS kaynak kodu GitHubda barındırılmaktadır. Bu kılavuzda entir boyunca yürüyün

Sunucunuza IP Adresi Aralığı Ekleyin (CentOS / Ubuntu / Debian)

Sunucunuza IP Adresi Aralığı Ekleyin (CentOS / Ubuntu / Debian)

Giriş Bu eğitimde, CentOS, Debian veya Ubuntu çalıştıran bir Linux sunucusuna tüm IP aralığını / alt ağını ekleme işlemini ele alacağız. Süreç

Counter Strikeı Ayarlama: Debianda Kaynak

Counter Strikeı Ayarlama: Debianda Kaynak

Bu kılavuzda, Debian 7de Counter Strike: Source oyun sunucusu kuracağız. Bu komutlar Debian 7de test edildi, ancak aynı zamanda o

Debian Üzerinde Snort Nasıl Yapılandırılır

Debian Üzerinde Snort Nasıl Yapılandırılır

Snort, ücretsiz bir ağ saldırı tespit sistemidir (IDS). Daha az resmi terimle, ağınızı şüpheli etkinlikler için gerçek zamanlı olarak izlemenizi sağlar

Debian 9 Üzerinde Dolibarr Kurulumu

Debian 9 Üzerinde Dolibarr Kurulumu

Farklı Bir Sistem mi Kullanıyorsunuz? Dolibarr, işletmeler için açık kaynaklı bir kurumsal kaynak planlaması (ERP) ve müşteri ilişkileri yönetimi (CRM). Dolibarr

26 Büyük Veri Analitik Tekniğine Bir Bakış: 1. Bölüm

26 Büyük Veri Analitik Tekniğine Bir Bakış: 1. Bölüm

26 Büyük Veri Analitik Tekniğine Bir Bakış: 1. Bölüm

Nintendo Switch Hakkında Son Derece Çılgın 6 Şey

Nintendo Switch Hakkında Son Derece Çılgın 6 Şey

Birçoğunuz Switch'in Mart 2017'de çıkacağını ve yeni özelliklerini biliyorsunuz. Bilmeyenler için, 'Switch'i 'olmazsa olmaz bir gadget' yapan özelliklerin bir listesini hazırladık.

Hala Teslim Edilmeyen Teknoloji Sözleri

Hala Teslim Edilmeyen Teknoloji Sözleri

Teknoloji devlerinin sözlerini yerine getirmesini mi bekliyorsunuz? teslim edilmeyenleri kontrol edin.

Büyük Veri Referans Mimarisi Katmanlarının İşlevleri

Büyük Veri Referans Mimarisi Katmanlarının İşlevleri

Büyük Veri Mimarisindeki farklı katmanları ve işlevlerini en basit şekilde öğrenmek için blogu okuyun.

Yapay Zeka Süreç Otomasyonunu Nasıl Bir Sonraki Seviyeye Taşıyabilir?

Yapay Zeka Süreç Otomasyonunu Nasıl Bir Sonraki Seviyeye Taşıyabilir?

Yapay Zekanın küçük ölçekli şirketler arasında nasıl popüler hale geldiğini ve onları büyütme ve rakiplerine üstünlük sağlama olasılıklarını nasıl artırdığını öğrenmek için bunu okuyun.

CAPTCHA: İnsan-AI Ayrımı İçin Ne Kadar Geçerli Bir Teknik Kalabilir?

CAPTCHA: İnsan-AI Ayrımı İçin Ne Kadar Geçerli Bir Teknik Kalabilir?

CAPTCHA, son birkaç yılda kullanıcıların çözmesi oldukça zorlaştı. Gelecekte spam ve bot tespitinde etkili kalabilecek mi?

Teknolojik Tekillik: İnsan Uygarlığının Uzak Bir Geleceği mi?

Teknolojik Tekillik: İnsan Uygarlığının Uzak Bir Geleceği mi?

Bilim hızla gelişip birçok çabamızı üstlendikçe, kendimizi açıklanamaz bir Tekilliğe maruz bırakmanın riskleri de artıyor. Okuyun, tekillik bizim için ne anlama gelebilir.

Teletıp ve Uzaktan Sağlık Hizmeti: Gelecek Burada

Teletıp ve Uzaktan Sağlık Hizmeti: Gelecek Burada

Teletıp, uzaktan sağlık hizmetleri ve gelecek nesiller üzerindeki etkisi nedir? Pandemi durumunda iyi bir yer mi değil mi? Bir görünüm bulmak için blogu okuyun!

Hackerların Nasıl Para Kazandığını Hiç Merak Ettiniz mi?

Hackerların Nasıl Para Kazandığını Hiç Merak Ettiniz mi?

Bilgisayar korsanlarının çok para kazandığını duymuş olabilirsiniz, ancak bu kadar parayı nasıl kazandıklarını hiç merak ettiniz mi? Hadi tartışalım.

macOS Catalina 10.15.4 Ek Güncellemesi Çözmekten Daha Fazla Soruna Neden Oluyor

macOS Catalina 10.15.4 Ek Güncellemesi Çözmekten Daha Fazla Soruna Neden Oluyor

Son zamanlarda Apple, sorunları gidermek için macOS Catalina 10.15.4'ü ek bir güncelleme yayınladı, ancak güncelleme, mac makinelerinde tuğla oluşmasına neden olan daha fazla soruna neden oluyor gibi görünüyor. Daha fazla bilgi edinmek için bu makaleyi okuyun