Ako nainštalovať GitLab Community Edition (CE) 11.x na Debian 9

Odkedy GitHub získal Microsoft, nemálo vývojárov plánovalo migrovať svoje vlastné úložiská kódu z github.com na alternatívne riešenie s vlastným hosťovaním. GitLab Community Edition (CE) je najbežnejšou voľbou.

Ako sofistikované a flexibilné riešenie je možné GitLab CE nasadiť pomocou rôznych metód, ale tu bude zahrnutá iba oficiálne odporúčaná metóda, inštalácia balíka Omnibus.

Predpoklady

  • Čerstvá inštancia servera Vultr Debian 9 x64 s najmenej 4 GB pamäte. Na obsluhu až 100 používateľov sa odporúča 8 GB alebo viac. Povedzme, že jeho adresa IPv4 je 203.0.113.1.
  • Sudo používateľ .
  • Doména gitlab.example.comsmerujúca k inštancii uvedenej vyššie.

Poznámka: Pri nasadzovaní na vlastnej inštancii servera nezabudnite nahradiť všetky vzorové hodnoty skutočnými.

Krok 1: Vykonajte základné úlohy pre hosťovanie GitLab CE

Spustite terminál SSH a prihláste sa do svojej inštancie servera Debian 9 x64 ako používateľ sudo.

Pridajte odkladací oddiel a upravte nastavenie výmeny

Pri nasadzovaní GitLab CE 11.x na stroji so 4 GB pamäte je potrebné nastaviť 4 GB odkladací oddiel pre hladký chod.

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

Poznámka: Ak používate inú veľkosť servera, veľkosť odkladacieho oddielu sa môže líšiť.

Na účely výkonu systému sa odporúča nakonfigurovať nastavenie swappiness jadra na nízku hodnotu, ako napríklad 10:

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

Výstupom catpríkazu bude 10.

Nastavte názov hostiteľa zariadenia a úplný názov domény (FQDN)

Na nastavenie názvu hostiteľa gitlaba FQDN gitlab.example.compre počítač použite nasledujúce príkazy :

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

Výsledky môžete potvrdiť:

hostname
hostname -f

Nastavte pravidlá brány firewall

Nastavte primerané pravidlá brány firewall na prevádzku webovej lokality:

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

Všetky vyššie uvedené nastavenia sa prejavia okamžite. Na ich zobrazenie na kontrolu použite nasledujúci príkaz:

sudo iptables -L -n

Tento iptable-persistentnástroj použite na uloženie všetkých existujúcich pravidiel iptables do súboru /etc/iptables/rules.v4, čím sa všetky pravidlá iptables stanú trvalými:

sudo apt install -y iptables-persistent

Počas inštalácie sa vás spýta, či chcete uložiť aktuálne pravidlá IPv4/IPv6. Dvojitým stlačením ENTERuložíte aktuálne pravidlá IPv4 aj IPv6 do /etc/iptables/rules.v4a /etc/iptables/rules.v6.

Ak sa pokúsite aktualizovať pravidlá IPv4 neskôr, uložte aktualizáciu pomocou nasledujúceho:

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

Aktualizujte systém

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

Keď je systém opäť v prevádzke, prihláste sa ako ten istý používateľ sudo, aby ste mohli pokračovať.

Krok 2: Nainštalujte požadované závislosti

Pred inštaláciou GitLab CE musíte nainštalovať požadované závislosti:

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

Tiež, ak chcete použiť Postfix na odosielanie správ s upozornením, musíte si nainštalovať Postfix:

sudo apt install -y postfix

Počas inštalácie sa môže zobraziť konfiguračná obrazovka:

  1. Stlačením TABzvýraznite <OK>tlačidlo na prvej obrazovke a potom stlačte ENTER.
  2. Vyberte Internet Sitea stlačte ENTER.
  3. Do mail namepoľa zadajte FQDN vášho servera gitlab.example.coma stlačte ENTER.
  4. Ak sa objavia ďalšie obrazovky, stlačením ENTERpotvrďte predvolené nastavenia.

Spustite a povoľte službu Postfix:

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

Upravte pravidlá brány firewall pre Postfix:

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'

Po nainštalovaní Postfixu musíte Postfix nakonfigurovať úpravou jeho hlavného konfiguračného súboru /etc/postfix/main.cfv súlade so skutočnými nastaveniami servera.

Poznámka: Okrem vyššie uvedených pokynov musíte odoslať podporný lístok na zrušenie predvoleného blokovania Vultr na porte SMTP 25.

Prípadne, ak chcete použiť iné riešenie na odosielanie správ, jednoducho preskočte inštaláciu Postfixu a vyberte použitie externého SMTP servera po inštalácii GitLab CE.

Krok 3: Nastavte GitLab APT repo a potom nainštalujte GitLab CE

Nastavte úložisko GitLab CE APT na vašom systéme:

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

Ďalej nainštalujte GitLab CE 11.x:

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

Inštalácia môže chvíľu trvať.

Nakoniec nasmerujte svoj obľúbený webový prehliadač na http://gitlab.example.coma potom odošlite nové heslo podľa výzvy na dokončenie inštalácie.

Odteraz na prihlásenie ako správca použite prihlasovacie údaje uvedené nižšie:

  • Používateľské meno: root
  • heslo: <your-new-password>

Krok 4: Povoľte prístup HTTPS integráciou certifikátu Let's Encrypt SSL

Zatiaľ ste úspešne nainštalovali GitLab CE 11.x na svoju inštanciu servera a používatelia už môžu navštíviť stránku pomocou protokolu HTTP. Z bezpečnostných dôvodov sa odporúča povoliť prístup HTTPS na váš server GitLab integráciou certifikátu Let's Encrypt SSL.

Pomocou vieditora otvorte konfiguračný súbor GitLab CE:

sudo vi /etc/gitlab/gitlab.rb

Nájdite nasledujúce dva riadky:

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

Vymeňte ich podľa toho:

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

Uložiť a ukončiť:

:wq!

Prekonfigurujte GitLab CE pomocou aktualizovaných nastavení:

sudo gitlab-ctl reconfigure

Rekonfigurácia môže chvíľu trvať.

Po vykonaní rekonfigurácie budú všetci používatelia nútení pri prístupe na stránku GitLab používať protokol HTTPS.

Poznámka: Po prepnutí z HTTP na HTTPS môžu staršie súbory cookie spôsobiť chybu GitLab 422. Tento problém rieši vymazanie súborov cookie.


Ako nastaviť bezobslužné aktualizácie na Debian 9 (Stretch)

Ako nastaviť bezobslužné aktualizácie na Debian 9 (Stretch)

Používate iný systém? Ak si zakúpite server Debian, mali by ste mať vždy najnovšie bezpečnostné záplaty a aktualizácie, či už spíte alebo nie

Nastavte si svoj vlastný DNS server na Debian/Ubuntu

Nastavte si svoj vlastný DNS server na Debian/Ubuntu

Tento tutoriál vysvetľuje, ako nastaviť server DNS pomocou Bind9 na Debiane alebo Ubuntu. V celom článku podľa toho nahraďte názov vašej-domény.com. Pri th

Kompilujte a nainštalujte Nginx pomocou modulu PageSpeed ​​na Debian 8

Kompilujte a nainštalujte Nginx pomocou modulu PageSpeed ​​na Debian 8

V tomto článku uvidíme, ako skompilovať a nainštalovať hlavnú líniu Nginx z oficiálnych zdrojov Nginx pomocou modulu PageSpeed, ktorý vám umožňuje t

Ako nainštalovať Kanboard na Debian 9

Ako nainštalovať Kanboard na Debian 9

Používate iný systém? Úvod Kanboard je bezplatný a otvorený softvérový program na riadenie projektov, ktorý je navrhnutý tak, aby uľahčil a vizualizoval

Ako nainštalovať Gitea na Debian 9

Ako nainštalovať Gitea na Debian 9

Používate iný systém? Gitea je alternatívny open source systém na správu verzií s vlastným hosťovaním, ktorý používa Git. Gitea je napísaná v Golangu a je

Nainštalujte Lynis na Debian 8

Nainštalujte Lynis na Debian 8

Úvod Lynis je bezplatný nástroj na auditovanie systému s otvoreným zdrojovým kódom, ktorý používajú mnohí správcovia systému na overenie integrity a posilnenie svojich systémov. ja

Ako nainštalovať Thelia 2.3 na Debian 9

Ako nainštalovať Thelia 2.3 na Debian 9

Používate iný systém? Thelia je open source nástroj na vytváranie webových stránok elektronického podnikania a správu online obsahu napísaného v PHP. Zdrojový kód Thelia i

Vytvorenie siete serverov Minecraft pomocou BungeeCord na Debian 8, Debian 9 alebo CentOS 7

Vytvorenie siete serverov Minecraft pomocou BungeeCord na Debian 8, Debian 9 alebo CentOS 7

Čo budete potrebovať Vultr VPS s aspoň 1 GB RAM. Prístup SSH (s oprávneniami root/administrátor). Krok 1: Inštalácia BungeeCord Najprv veci

Ako nainštalovať Golang 1.8.3 na CentOS 7, Ubuntu 16.04 a Debian 9

Ako nainštalovať Golang 1.8.3 na CentOS 7, Ubuntu 16.04 a Debian 9

Golang je programovací jazyk vyvinutý spoločnosťou Google. Vďaka svojej všestrannosti, jednoduchosti a spoľahlivosti sa Golang stal jedným z najpopulárnejších

Obnovte koreňové heslo MySQL na Debian/Ubuntu

Obnovte koreňové heslo MySQL na Debian/Ubuntu

Ak ste zabudli svoje root heslo MySQL, môžete ho resetovať podľa krokov v tomto článku. Proces je pomerne jednoduchý a funguje na nich

Vytváranie sieťových zdieľaní pomocou Samby v Debiane

Vytváranie sieťových zdieľaní pomocou Samby v Debiane

Sú chvíle, keď potrebujeme zdieľať súbory, ktoré musia byť viditeľné pre klientov Windows. Keďže systémy založené na poistkách fungujú iba na Linuxe, predstavíme sa

Nastavenie Counter Strike: Zdroj na Debiane

Nastavenie Counter Strike: Zdroj na Debiane

V tejto príručke nastavíme herný server Counter Strike: Source na Debiane 7. Tieto príkazy boli testované na Debiane 7, ale mali by tiež fungovať

Ako nainštalovať Unturned 2.2.5 na Debian 8

Ako nainštalovať Unturned 2.2.5 na Debian 8

V tejto príručke sa dozviete, ako nastaviť server Unturned 2.2.5 na Vultr VPS so systémom Debian 8. Poznámka: Toto je upravená verzia Unturned, ktorá

Ako nainštalovať Cachet na Debian 8

Ako nainštalovať Cachet na Debian 8

V tomto návode sa naučíte, ako nainštalovať Cachet na Debian 8. Cachet je výkonný open source systém stavových stránok. Inštalácia Tento tutoriál práve pokračuje

Automaticky zálohujte viacero databáz MySQL alebo MariaDB

Automaticky zálohujte viacero databáz MySQL alebo MariaDB

Úvod V tomto článku si dobre prejdeme, ako zálohovať viacero databáz MySQL alebo MariaDB, ktoré sedia na rovnakom počítači pomocou vlastného bash skriptu.

Nastavenie Chroota v Debiane

Nastavenie Chroota v Debiane

Tento článok vás naučí, ako nastaviť chroot väzenie v Debiane. Predpokladám, že používate Debian 7.x. Ak používate Debian 6 alebo 8, môže to fungovať, ale

How to Install Reader Self 3.5 RSS Reader on a Debian 9 LAMP VPS

How to Install Reader Self 3.5 RSS Reader on a Debian 9 LAMP VPS

Using a Different System? Reader Self 3.5 is a simple and flexible, free and open source, self-hosted RSS reader and Google Reader alternative. Reader Sel

Ako nainštalovať Backdrop CMS 1.8.0 na Debian 9 LAMP VPS

Ako nainštalovať Backdrop CMS 1.8.0 na Debian 9 LAMP VPS

Používate iný systém? Backdrop CMS 1.8.0 je jednoduchý a flexibilný, mobilný, bezplatný a open source systém na správu obsahu (CMS), ktorý nám umožňuje

Ako nainštalovať SteamCMD na váš VPS

Ako nainštalovať SteamCMD na váš VPS

V tomto návode nainštalujeme SteamCMD. SteamCMD je možné použiť na stiahnutie a inštaláciu mnohých herných serverov Steam, ako je Counter-Strike: Global Offensiv

Aktualizujte Python na Debian

Aktualizujte Python na Debian

Ako možno viete, úložiská Debianu sa aktualizujú veľmi pomaly. V čase písania tohto článku sú verzie vydania Pythonu 2.7.12 a 3.5.2, ale v úložisku Debian 8

The Rise of Machines: Real World Applications of AI

The Rise of Machines: Real World Applications of AI

Umelá inteligencia nie je v budúcnosti, je tu priamo v súčasnosti V tomto blogu si prečítajte, ako aplikácie umelej inteligencie ovplyvnili rôzne sektory.

Útoky DDOS: Stručný prehľad

Útoky DDOS: Stručný prehľad

Ste aj vy obeťou DDOS útokov a máte zmätok ohľadom metód prevencie? Ak chcete vyriešiť svoje otázky, prečítajte si tento článok.

Zaujímalo vás niekedy, ako hackeri zarábajú peniaze?

Zaujímalo vás niekedy, ako hackeri zarábajú peniaze?

Možno ste už počuli, že hackeri zarábajú veľa peňazí, ale premýšľali ste niekedy nad tým, ako môžu zarábať také peniaze? poďme diskutovať.

Revolučné vynálezy od spoločnosti Google, ktoré vám uľahčia život.

Revolučné vynálezy od spoločnosti Google, ktoré vám uľahčia život.

Chcete vidieť revolučné vynálezy od Google a ako tieto vynálezy zmenili život každého dnešného človeka? Potom si prečítajte na blogu a pozrite si vynálezy spoločnosti Google.

Piatok Essential: Čo sa stalo s autami poháňanými AI?

Piatok Essential: Čo sa stalo s autami poháňanými AI?

Koncept samoriadených áut vyraziť na cesty s pomocou umelej inteligencie je snom, ktorý máme už nejaký čas. Ale napriek niekoľkým prísľubom ich nikde nevidno. Prečítajte si tento blog a dozviete sa viac…

Technologická singularita: vzdialená budúcnosť ľudskej civilizácie?

Technologická singularita: vzdialená budúcnosť ľudskej civilizácie?

Ako sa veda vyvíja rýchlym tempom a preberá veľa nášho úsilia, zvyšuje sa aj riziko, že sa vystavíme nevysvetliteľnej singularite. Prečítajte si, čo pre nás môže znamenať singularita.

Vývoj ukladania dát – Infografika

Vývoj ukladania dát – Infografika

Spôsoby ukladania údajov sa môžu vyvíjať už od zrodu údajov. Tento blog sa zaoberá vývojom ukladania údajov na základe infografiky.

Funkcionality vrstiev referenčnej architektúry veľkých dát

Funkcionality vrstiev referenčnej architektúry veľkých dát

Prečítajte si blog, aby ste čo najjednoduchším spôsobom spoznali rôzne vrstvy architektúry veľkých dát a ich funkcie.

6 úžasných výhod toho, že máme v živote inteligentné domáce zariadenia

6 úžasných výhod toho, že máme v živote inteligentné domáce zariadenia

V tomto digitálnom svete sa inteligentné domáce zariadenia stali kľúčovou súčasťou života. Tu je niekoľko úžasných výhod inteligentných domácich zariadení o tom, ako robia náš život, ktorý stojí za to žiť, a ktorý zjednodušujú.

Aktualizácia doplnku macOS Catalina 10.15.4 spôsobuje viac problémov, ako ich rieši

Aktualizácia doplnku macOS Catalina 10.15.4 spôsobuje viac problémov, ako ich rieši

Spoločnosť Apple nedávno vydala doplnkovú aktualizáciu macOS Catalina 10.15.4 na opravu problémov, ale zdá sa, že táto aktualizácia spôsobuje ďalšie problémy, ktoré vedú k blokovaniu počítačov Mac. Prečítajte si tento článok a dozviete sa viac