Proč Gitlab
Rychlé odkazy
- Proč Gitlab
- Založit
- Nainstalujte závislosti
- Nainstalujte Gitlab
- Spusťte instalaci
- Počáteční nastavení
- Nastavit SSH
- Pro pravidelné SSH
- Nakonfigurujte UFW
- Závěrečné myšlenky
Existuje spousta skvělých možností pro hostování vašich projektů a sdílení vašeho kódu. Můžete si zdarma založit účet Github. Proč byste tedy chtěli projít problémem s nastavením Gitlabu sami?
Existuje několik dobrých argumentů, ve skutečnosti, v neposlední řadě je to soukromí. Gitlab je váš. Hostujete to a vlastníte to. Můžete tedy určit, kdo má přístup k vašim úložištím. To také znamená, že máte kontrolu nad samotnou platformou. Nejste podřízeni podnikovým zásadám, svévolným změnám v cenách nebo sběru dat.
Ovládání verzí s vlastním hostitelem také znamená, že nejste závislí na službě pro přístup k vašemu kódu. Šance, že Github nebo jiná podobná služba jsou z důvodu výpadku zcela nedostupné, jsou štíhlé, ale raději byste to spíše nebyli?
Gitlab je také velmi snadno nastavitelný a vyžaduje pouze, abyste měli Linux server, na kterém běží open source software Gitlab, z nichž většina je předkonfigurována a připravena ke spuštění.
Založit
Než začnete, budete muset nastavit VPS, aby hostoval Gitlab, pokud ho neplánujete hostovat lokálně. Hostingové společnosti jako DigitalOcean a Linode nabízejí cenově výhodné možnosti, které mohou váš server uvést do provozu.
Je také dobré zakoupit si doménové jméno pro váš server. Nebo můžete na server Gitlab namířit subdoménu existujícího názvu domény. V obou případech usnadníte přístup k webovému rozhraní.
Tato příručka bude následovat Ubuntu 16.04 LTS. Je to nejnovější vydání dlouhodobé podpory Ubuntu a je velmi snadné s ním pracovat. Skvělá volba by byla také Debian Stretch (Stable) a většina z této příručky bude s ní také pracovat. DigitalOcean i Linode nastaví váš server s OS podle vašeho výběru, takže není nutné instalovat Ubuntu.
Nainstalujte závislosti
Při prvním spuštění systému Ubuntu je vhodné aktualizovat systém tak, aby nebyly k dispozici žádné opravy zabezpečení. Jděte do toho a udělejte to první.
$ sudo apt update $ sudo apt upgrade
Až bude aktualizace spuštěna, musíte pro instalaci Gitlab nainstalovat několik věcí. Pomocí apt je také nainstalujte.
$ sudo apt install curl openssh-server ca-Certifits postfix
A je to. Jste připraveni spustit instalační skript Gitlab.
Nainstalujte Gitlab
Gitlab udržuje své vlastní úložiště Debian / Ubuntu. Chcete-li úložiště na svém serveru povolit, stáhněte a spusťte pohodlný instalační skript poskytnutý týmem Gitlab.
$ curl -sS https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.deb.sh | sudo bash
Může to vypadat hodně, ale stáhne pouze skript a řekne shellu příkazového řádku, aby ho spustil. Skript potrvá několik sekund, než projde a nastaví úložiště. Jakmile to uděláte, budete připraveni nainstalovat balíček Gitlab.
$ sudo apt nainstalujte gitlab-ce
Tato instalace bude trvat několik minut. Gitlab je dodáván v jednom velkém balíčku nazvaném „Omnibus package“. Je dodáván se vším, co Gitlab potřebuje, aby byly všechny spojeny dohromady.
Spusťte instalaci
Abyste mohli nakonfigurovat Gitlab, musíte spustit instalační skript. Přišlo to v balíčku, který jste právě nainstalovali, takže jej nyní můžete spustit.
$ sudo gitlab-ctl překonfigurovat
Skript potrvá několik minut, než proběhne vše. Většinou se jedná o nastavení databázového backendu pro Gitlab. Uvidíte hodně migrací Ruby on Rails běžících na obrazovce. Může to chvíli trvat, ale až bude hotovo, Gitlab bude připraven k použití.
Počáteční nastavení
Otevřete webový prohlížeč a přejděte na server Gitlab. Uvítá vás stránka, která vás požádá o nastavení hesla pro správu. Toto je samozřejmě heslo pro váš administrátorský účet. Ve výchozím nastavení je tento název účtu „root“.
Po založení tohoto účtu se můžete buď přihlásit, nebo zaregistrovat běžný uživatelský účet, a přihlásit se. V každém případě budete mít po přihlášení přístup k celému dashboardu Gitlab pro vytváření a správu úložišť.
Nastavit SSH
Nechcete, abyste museli tlačit změny do svých projektů pomocí hesel. Je to bolest a není příliš bezpečná. Nejlepší věc, kterou můžete udělat, je vytvořit SSH pro automatické přihlášení z jakéhokoli počítače s nainstalovaným klíčem.
Klíče SSH lze v systémech Linux a Mac velmi snadno vytvářet. V systému Windows 10 by měl být tento proces stejný prostřednictvím dostupné aplikace OpenSSH.
Otevřete terminál a vytvořte klíč pomocí následujícího příkazu. Pokud chcete použít přihlašovací údaje svého počítače, můžete část -C '' opustit. Jinak je e-mailová adresa obvykle tím pravým hovorem.
$ ssh-keygen -b 4096 -t rsa -C ''
Tento proces vás provede několika kroky. Výchozí hodnoty jsou většinou dobré a vše je zcela zřejmé. Pokud se rozhodnete přiřadit heslo ke svému klíči, budete jej potřebovat pokaždé, když se přihlásíte nebo stisknete změnu. Heslo můžete nechat prázdné, abyste jej nepoužívali.
Chcete-li zobrazit klíč, spusťte příkaz níže. Vypadá to jako banda nesmyslů a v podstatě je, ale to je váš klíč. Budete ji muset zkopírovat z terminálu a projít kolem Gitlabu.
$ cat ~ / .ssh / id_rsa.pub
Zpět na Gitlabu klikněte na ikonu profilu v pravém horním rohu obrazovky. Poté ve výsledné nabídce klikněte na „Nastavení“. V nabídce vlevo na stránce klikněte na „SSH Keys“.
Zkopírujte klíč z vašeho terminálu. Začněte za „ssh-rsa“ a zastavte se před svou e-mailovou adresou. Takže zkopírujte nesmyslnou část. Vložte jej do velkého políčka označeného „Klíč“. Pojmenujte svůj klíč a uložte jej. Od této chvíle budete moci poslat svůj kód do svých úložišť bez přihlášení.
Pro pravidelné SSH
Už máte klíč SSH. Můžete jej také použít pro SSH. OpenSSH má vestavěný obslužný program, který tlačí klíč na váš server.
$ ssh-copy-id -i ~ / .ssh / id_rsa.pub _IP
Nahraďte server_username a SERVER_IP svým uživatelským jménem na serveru a IP adresou serveru.
Zkuste se přihlásit zpět na server pomocí nového klíče.
$ ssh _IP
Měli byste se připojit okamžitě, aniž byste museli zadávat heslo.
Je lepší zamknout i zbytek SSH. Je to pravděpodobně jeden z nejslabších bodů na veřejně orientovaném serveru. Otevřete / etc / ssh / sshd_confg v textovém editoru podle vašeho výběru na serveru.
Je několik věcí, které musíte změnit. Nejprve najděte PermitRootLogin a nastavte jej na no.
PermitRootLogin no
Dále vyhledejte PasswordAuthentication, odkomentujte jej a nastavte na no.
PasswordAuthentication no
Poté zkontrolujte, zda jsou následující dva řádky nastaveny na ne. Ve výchozím nastavení by měly být na Ubuntu, ale je lepší to zkontrolovat.
PermitEmptyPasswords no HostbasedAuthentication no
Nakonec vyhledejte UsePAM v dolní části konfigurace a nastavte jej také na ne.
UsePAM no
Uložte a ukončete konfiguraci. Poté restartujte službu SSH.
Nakonfigurujte UFW
Poslední bezpečnostní opatření, které pravděpodobně chcete provést, je instalace a nastavení brány firewall. Ubuntu funguje velmi dobře s dobře pojmenovaným nekomplikovaným firewallem (UFW). Je to jen obal kolem jádra firewallu iptables, ale práce s firewallem je mnohem jednodušší. Pokračujte a nainstalujte.
$ sudo apt install ufw
Jakmile máte nainstalovanou ufw, začněte nastavením výchozích pravidel tak, aby bylo vše zakázáno.
$ sudo ufw default deny příchozí $ sudo ufw default deny outgoing $ sudo ufw default deny forward
Dále nastavte pravidla tak, aby umožňovala základní služby, včetně služby Git. Komentáře jsou zde pouze pro informaci. Nesnažte se je spustit.
# SSH $ sudo ufw povolit v ssh $ sudo ufw povolit ssh # HTTP a HTTPS pro web $ sudo ufw povolit v http $ sudo ufw povolit http $ sudo ufw povolit v https $ sudo ufw povolit https # NTP pro udržení času správné $ sudo ufw povolit v ntp $ sudo ufw povolit ntp # Port 53 pro rozlišení domény DNS $ sudo ufw povolit v 53 $ sudo ufw povolit 53 # Pravděpodobně to nebudete potřebovat # Pokud váš server používá DHCP, odblokujte 67 $ sudo ufw povolit v 67 $ sudo ufw povolit 67 # Konečně, Git $ sudo ufw povolit v 9418 $ sudo ufw přidělit 9418
Ujistěte se, že je vše v pořádku, a povolte bránu firewall
$ sudo ufw povolit
Stav brány firewall můžete zkontrolovat pomocí následujícího postupu:
$ sudo ufw status
A je to! Váš server Gitlab je za bránou firewall.
Závěrečné myšlenky
Nyní máte funkční server Gitlab. Prostřednictvím rozhraní Gitlab můžete začít nastavovat uživatelské účty a projekty. Gitlab je nyní pravidelným balíčkem Ubuntu, takže se bude pravidelně aktualizovat pomocí apt, protože systém bude aktualizován.
Gitlab vám poskytne veškerou flexibilitu, kterou budete potřebovat ke správě svých vlastních projektů a větších projektů, na kterých můžete pracovat s týmem. Je to plně schopná a robustní platforma, na kterou se stále více týmů spoléhá.
