A GitLab Community Edition (CE) 11.x telepítése Debian 9 rendszeren

Amióta a GitHubot a Microsoft felvásárolta, jó néhány fejlesztő tervezte, hogy saját kódtárát migrálja a github.com webhelyről egy alternatív, saját üzemeltetésű megoldásra. A GitLab Community Edition (CE) a leggyakoribb választás.

Kifinomult és rugalmas megoldásként a GitLab CE többféle módszerrel is telepíthető, de itt csak a hivatalosan ajánlott módszerrel, az Omnibus csomag telepítésével foglalkozunk.

Előfeltételek

  • Friss Vultr Debian 9 x64 szerverpéldány legalább 4 GB memóriával. 8 GB vagy több ajánlott akár 100 felhasználó kiszolgálásához. Tegyük fel, hogy az IPv4-címe 203.0.113.1.
  • Egy sudo felhasználó .
  • Egy tartomány gitlab.example.coma fent említett példányra mutat.

Megjegyzés: Amikor saját kiszolgálópéldányán telepíti a telepítést, ügyeljen arra, hogy az összes példaértéket tényleges értékre cserélje.

1. lépés: Végezze el az alapvető feladatokat a GitLab CE üzemeltetéséhez

Indítson el egy SSH terminált, és jelentkezzen be a Debian 9 x64 szerverpéldányba sudo felhasználóként.

Adjon hozzá egy swap partíciót, és módosítsa a cserepartíciót

Ha a GitLab CE 11.x-et 4 GB memóriával rendelkező gépen telepíti, a zökkenőmentes működés érdekében be kell állítani egy 4 GB-os swap partíciót.

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

Megjegyzés: Ha más szerverméretet használ, a swap partíció mérete változhat.

A rendszer teljesítménye érdekében ajánlatos a kernel cserebeállítását alacsony értékre konfigurálni, például 10:

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

A catparancs kimenete a következő lesz 10.

Állítsa be a gép gazdagépnevét és teljesen minősített tartománynevét (FQDN)

A következő parancsokkal állítson be egy gazdagépnevet gitlab, és egy FQDN-t, gitlab.example.coma géphez:

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

Megerősítheti az eredményeket:

hostname
hostname -f

Tűzfalszabályok beállítása

Állítson be ésszerű tűzfalszabályokat egy webhely futtatásához:

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

A fenti beállítások azonnal érvénybe lépnek. A következő paranccsal listázhatja őket felülvizsgálatra:

sudo iptables -L -n

Az iptable-persistenteszközzel mentheti az összes létező iptables-szabályt egy fájlba /etc/iptables/rules.v4, így az összes iptables-szabály állandó marad:

sudo apt install -y iptables-persistent

A telepítés során a rendszer megkérdezi, hogy kívánja-e menteni az aktuális IPv4/IPv6 szabályokat. Nyomja meg ENTERkétszer az aktuális IPv4- és IPv6-szabályok mentéséhez a /etc/iptables/rules.v4és /etc/iptables/rules.v6.

Ha később megpróbálja frissíteni az IPv4-szabályokat, a frissítés mentéséhez használja a következőket:

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

Frissítse a rendszert

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

Amikor a rendszer újra működik, jelentkezzen be ugyanazzal a sudo felhasználóval a továbblépéshez.

2. lépés: Telepítse a szükséges függőségeket

A GitLab CE telepítése előtt telepítenie kell a szükséges függőségeket:

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

Továbbá, ha a Postfixet szeretné használni értesítő üzenetek küldésére, telepítenie kell a Postfixet:

sudo apt install -y postfix

A telepítés során egy konfigurációs képernyő jelenhet meg:

  1. Nyomja TABmeg a <OK>gombot a gomb kijelöléséhez az első képernyőn, majd nyomja meg a gombot ENTER.
  2. Válassza ki Internet Siteés nyomja meg a gombot ENTER.
  3. A mail namemezőbe írja be a kiszolgáló FQDN-jét gitlab.example.com, és nyomja meg a gombot ENTER.
  4. Ha más képernyők jelennek meg, nyomja meg ENTERa gombot az alapértelmezett beállítások elfogadásához.

Indítsa el és engedélyezze a Postfix szolgáltatást:

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

Módosítsa a Postfix tűzfalszabályait:

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'

A Postfix telepítése után konfigurálnia kell a Postfixet a fő konfigurációs fájl szerkesztésével /etc/postfix/main.cfa tényleges szerverbeállításoknak megfelelően.

Megjegyzés: A fenti utasítások mellett támogatási jegyet kell benyújtania a Vultr alapértelmezett blokkjának törléséhez a 25-ös SMTP-porton.

Alternatív megoldásként, ha másik üzenetkezelési megoldást szeretne használni, egyszerűen hagyja ki a Postfix telepítését, és válassza a külső SMTP-kiszolgáló használatát a GitLab CE telepítése után.

3. lépés: Állítsa be a GitLab APT repót, majd telepítse a GitLab CE-t

Állítsa be a GitLab CE APT tárolót a rendszeren:

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

Ezután telepítse a GitLab CE 11.x-et:

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

A telepítés eltarthat egy ideig.

Végül mutasson kedvenc webböngészőjére a címre http://gitlab.example.com, majd adjon meg egy új jelszót a telepítés befejezéséhez.

Mostantól az alábbi hitelesítő adatokkal jelentkezzen be rendszergazdaként:

  • Felhasználónév: root
  • Jelszó: <your-new-password>

4. lépés: Engedélyezze a HTTPS-hozzáférést egy Let's Encrypt SSL-tanúsítvány integrálásával

Egyelőre sikeresen telepítette a GitLab CE 11.x-et a szerverpéldányára, és a felhasználók már a HTTP protokoll használatával is felkereshetik az oldalt. Biztonsági okokból javasoljuk, hogy engedélyezze a HTTPS-hozzáférést a GitLab-kiszolgálóhoz egy Let's Encrypt SSL-tanúsítvány integrálásával.

A viszerkesztővel nyissa meg a GitLab CE konfigurációs fájlt:

sudo vi /etc/gitlab/gitlab.rb

Keresse meg a következő két sort:

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

Cserélje ki őket ennek megfelelően:

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

Mentés és kilépés:

:wq!

A GitLab CE újrakonfigurálása frissített beállításokkal:

sudo gitlab-ctl reconfigure

Az újrakonfigurálás eltarthat egy ideig.

Az újrakonfigurálás után minden felhasználó kénytelen lesz a HTTPS protokollt használni a GitLab webhely elérésekor.

Megjegyzés: Miután HTTP-ről HTTPS-re váltott, a régi cookie-k GitLab 422-es hibát okozhatnak. A cookie-k törlése megoldja ezt a problémát.

Hagyj kommentárt

Egyéni Windows ISO létrehozása frissítésekkel az NTLite használatával

Egyéni Windows ISO létrehozása frissítésekkel az NTLite használatával

Ez az oktatóanyag végigvezeti Önt a Vultrs rendszerekkel kompatibilis Windows ISO létrehozásának folyamatán. Itt megtanulhatja az <>Windows ISO<> előállításának lépéseit az NTLite segítségével.

A gépek felemelkedése: Az AI valós világbeli alkalmazásai

A gépek felemelkedése: Az AI valós világbeli alkalmazásai

A mesterséges intelligencia nem a jövőben, hanem itt a jelenben. Ebben a blogban Olvassa el, hogyan hatott a mesterséges intelligencia alkalmazások különböző ágazatokra.

DDOS támadások: Rövid áttekintés

DDOS támadások: Rövid áttekintés

Ön is DDOS támadások áldozata, és tanácstalan a megelőzési módszereket illetően? Olvassa el ezt a cikket a kérdések megoldásához.

Gondolkozott már azon, hogyan keresnek pénzt a hackerek?

Gondolkozott már azon, hogyan keresnek pénzt a hackerek?

Talán hallottál már arról, hogy a hackerek sok pénzt keresnek, de elgondolkodtál már azon, hogyan kereshetnek ennyi pénzt? beszéljük meg.

A Google forradalmi találmányai, amelyek megkönnyítik az életét.

A Google forradalmi találmányai, amelyek megkönnyítik az életét.

Szeretné látni a Google forradalmi találmányait, és azt, hogy ezek a találmányok hogyan változtatták meg minden mai ember életét? Ezután olvassa el a blogot, és nézze meg a Google találmányait.

Essential péntek: Mi történt az AI-vezérelt autókkal?

Essential péntek: Mi történt az AI-vezérelt autókkal?

Az önvezető autók koncepciója, hogy mesterséges intelligencia segítségével kerüljenek az utakra, már egy ideje álmunk. De számos ígéret ellenére sehol sem látszanak. Olvassa el ezt a blogot, hogy többet megtudjon…

Technológiai szingularitás: az emberi civilizáció távoli jövője?

Technológiai szingularitás: az emberi civilizáció távoli jövője?

Ahogy a tudomány gyors ütemben fejlődik, átveszi erőfeszítéseink nagy részét, megnő annak a kockázata is, hogy alávetjük magunkat egy megmagyarázhatatlan szingularitásnak. Olvassa el, mit jelenthet számunkra a szingularitás.

A Big Data Reference Architecture Layerek funkciói

A Big Data Reference Architecture Layerek funkciói

Olvassa el a blogot, hogy a legegyszerűbb módon ismerje meg a Big Data Architecture különböző rétegeit és azok funkcióit.

Az adattárolás fejlődése – Infografika

Az adattárolás fejlődése – Infografika

Az adatok tárolási módjai az Adatok születése óta alakulhatnak. Ez a blog egy infografika alapján mutatja be az adattárolás fejlődését.

Az okosotthoni eszközök 6 lenyűgöző előnye az életünkben

Az okosotthoni eszközök 6 lenyűgöző előnye az életünkben

Ebben a digitálisan vezérelt világban az intelligens otthoni eszközök az élet döntő részévé váltak. Íme az intelligens otthoni eszközök néhány elképesztő előnye, hogyan teszik életünket érdemessé és egyszerűbbé.