Anonim

Zakaj Gitlab

hitre povezave

  • Zakaj Gitlab
  • Nastaviti
  • Namestite odvisnosti
  • Namestite Gitlab
  • Zaženite namestitev
  • Začetna namestitev
  • Nastavite SSH
    • Za redno SSH
  • Konfigurirajte UFW
  • Zaključne misli

Obstaja veliko odličnih možnosti za gostovanje projektov in skupno rabo kode. Zdaj lahko brezplačno nastavite Github račun. Torej, zakaj bi si želeli, da bi sami nastavili Gitlab?

Za to obstaja kar nekaj dobrih argumentov, od katerih ni pravzaprav zasebnost. Gitlab je tvoj. Gostite ga in ga imate v lasti. Tako lahko nadzorujete, kdo ima dostop do vaših skladišč. To pomeni tudi, da imate nadzor nad samo platformo. Zanje ne veljajo korporativne politike, samovoljne spremembe cen ali zbiranje podatkov.

Samostojno krmiljenje različic pomeni tudi, da niste odvisni od storitve za dostop do svoje kode. Seveda so možnosti, da je Github ali kakšna podobna storitev zaradi izpada povsem nedosegljiva, vendar ne bi raje, da to sploh ni možnost?

Gitlab je tudi zelo enostavno nastaviti in zahteva le, da imate Linux strežnik, ki poganja odprtokodno programsko opremo Gitlab, večina pa je vnaprej konfigurirana in pripravljena na zagon.

Nastaviti

Preden začnete, morate vzpostaviti VPS, ki bo gostil Gitlab, razen če ga ne nameravate lokalno gostiti. Gostovalna podjetja, kot sta DigitalOcean in Linode, ponujajo stroškovno učinkovite možnosti, s katerimi lahko vaš strežnik zažene in deluje.

Prav tako je dobro kupiti ime domene tudi za vaš strežnik. Lahko pa na vaš strežnik Gitlab usmerite poddomene obstoječega imena domene. Tako ali tako bo olajšati dostop do spletnega vmesnika.

Ta navodila bodo sledila Ubuntu 16.04 LTS. Gre za najnovejšo izdajo podpore za Ubuntu in njeno zelo enostavno delo. Odlična možnost bi bila tudi Debian Stretch (Stable) in večina tega vodiča bo sodelovala tudi z njo. DigitalOcean in Linode bosta vaš strežnik nastavila z izbranim OS-om, zato Ubuntu ni treba nameščati.

Namestite odvisnosti

Ko prvič zaženete Ubuntu, je dobro posodobiti sistem in se prepričati, da ni na voljo nobenih varnostnih popravkov. Pojdi naprej in delaj to najprej.

$ sudo apt posodobitev $ sudo apt nadgradnja

Ko je posodobitev končana, morate za začetek Gitlaba namestiti nekaj stvari. Za namestitev uporabite tudi apt.

$ sudo apt namestite curl postfix strežnika opensh-strežnika ca-certifikatov

To je to. Pripravljeni ste zagnati skript za namestitev Gitlab.

Namestite Gitlab

Gitlab vzdržuje svoje skladišče Debian / Ubuntu. Če želite omogočiti skladišče na vašem strežniku, prenesite in zaženite priročen skript za namestitev, ki ga je zagotovila ekipa Gitlab.

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

To bi morda izgledalo veliko, vendar samo prenese strežnik in pove lupini ukazne vrstice, da ga zažene. Scenarij bo trajal nekaj sekund, da bo tekel skozi in nastavil skladišče. Ko to stori, boste pripravljeni namestiti paket Gitlab.

$ sudo apt namestite gitlab-ce

Ta namestitev bo trajala nekaj minut. Gitlab ima en velik paket, imenovan "Omnibusov paket." Na voljo je z vsem, kar potrebuje Gitlab.

Zaženite namestitev

Za nastavitev Gitlaba morate zagnati skript za namestitev. Priložen je bil paket, ki ste ga pravkar namestili, tako da lahko to zdaj zaženete.

$ sudo gitlab-ctl preoblikovanje

Scenarij bo trajal nekaj minut, da bo vse pretekel. Večinoma je nastavitev zaledja baze podatkov za Gitlab. Videli boste veliko selitev Ruby on Rails, ki tečejo po zaslonu. Morda bo trajalo nekaj časa, ko pa bo Gitlab pripravljen za uporabo.

Začetna namestitev

Odprite spletni brskalnik in se pomaknite do vašega Gitlab strežnika. Pozdravila vas bo stran, ki zahteva, da nastavite skrbniško geslo. To je očitno geslo za vaš skrbniški račun. Ime računa je privzeto »root«.

Ko je ta račun nastavljen, se lahko z njim prijavite ali registrirate redni uporabniški račun in se prijavite. Kakor koli že, ko se prijavite, boste imeli dostop do celotne nadzorne plošče Gitlab za ustvarjanje in upravljanje repozitorij.

Nastavite SSH

Ne želite, da spremembe sprememb pri svojih projektih uporabljate z gesli. To je bolečina in ni ravno varna. Najboljše, kar lahko naredite, je ustvariti SSH za samodejno prijavo iz katerega koli računalnika z nameščenim ključem.

SSH ključe je zelo enostavno ustvariti v Linuxu in Macu. V sistemu Windows 10 naj bi bil postopek enak prek razpoložljive aplikacije OpenSSH.

Odprite terminal in za ustvarjanje ključa zaženite naslednji ukaz. Del -C '' lahko izpustite, če želite samo uporabiti podatke za prijavo v računalnik. V nasprotnem primeru je e-poštni naslov običajno pravi klic.

$ ssh-keygen -b 4096 -t rsa -C ''

Postopek vas bo vodil skozi nekaj korakov. Privzeti so večinoma dobri in vse je dokaj samoumevno. Če se odločite za povezavo gesla s svojim ključem, ga boste potrebovali vsakič, ko se prijavite ali pritisnete na spremembo. Geslo lahko pustite prazno, da ga ne uporabljate.

Če si želite ogledati ključ, zaženite spodnji ukaz. Izgledalo bo kot kup neumnosti, in v bistvu je, ampak to je vaš ključ. Kopirati ga boste morali iz terminala in ga vstaviti v Gitlab.

$ cat ~ / .ssh / id_rsa.pub

Nazaj na Gitlab kliknite na ikono profila v zgornjem desnem kotu zaslona. Nato v nastalem meniju kliknite »Nastavitve«. V meniju na levi strani kliknite "SSH tipke."

Kopirajte ključ s svojega terminala. Začnite po ssh-rsa in se ustavite pred svojim e-poštnim naslovom. Torej, samo kopirajte neumni del. Prilepite ga v veliko okence z napisom "Ključ". Poimenujte ključ in ga shranite. Od tega trenutka boste lahko kodo potisnili v svoja skladišča, ne da bi se prijavili.

Za redno SSH

Že imate SSH ključ. Uporabite ga lahko tudi za SSH. OpenSSH ima vgrajen pripomoček za potiskanje ključa na vaš strežnik.

$ ssh-copy-id -i ~ / .ssh / id_rsa.pub _IP

Na strežniku in strežnikov IP naslov zamenjajte z imenom uporabnika in SERVER_IP s svojim uporabniškim imenom.

Poskusite se prijaviti nazaj v strežnik s pomočjo novega ključa.

$ ssh _IP

Takoj se morate povezati, ne da bi morali vnesti geslo.

Bolje je zakleniti tudi preostanek SSH. Verjetno je to ena najšibkejših točk v javnem strežniku. Odprite / etc / ssh / sshd_confg v urejevalniku besedil po vaši izbiri na strežniku.

Obstaja nekaj stvari, ki jih morate spremeniti. Najprej poiščite PermitRootLogin in ga nastavite na št.

Št. Dovoljenja za dovoljenje

Nato poiščite PasswordAuthentication, ga komentirajte in nastavite na št.

Št. Overjanja gesla št

Nato se prepričajte, da sta naslednji dve vrstici nastavljeni na št. Na Ubuntu bi morali biti privzeto, vendar je bolje, da preverite.

PermitEmptyPasswords no HostbasedAuthentication št

Na koncu poiščite UsePAM na dnu konfiguracije in ga nastavite na ne.

UsePAM št

Shranite in zapustite svojo konfiguracijo. Nato znova zaženite storitev SSH.

$ sudo systemctl znova zaženite sshd

Konfigurirajte UFW

Zadnji varnostni ukrep, ki ga verjetno želite sprejeti, je namestitev in nastavitev požarnega zidu. Ubuntu zelo dobro sodeluje s primerno imenovanim nezapletenim požarnim zidom (UFW). To je samo ovitek okoli požarnega zidu jedre iptables, vendar pa je delo s požarnim zidom bistveno lažje. Pojdite naprej in ga namestite.

$ sudo apt namestite ufw

Ko imate ufw nameščen, začnite z nastavitvijo privzetih pravil, da vse zavrnete.

$ sudo ufw privzeto zavrne dohodne $ sudo ufw privzeto zavrača odhodne $ sudo ufw privzeto zavrni naprej

Nato nastavite svoja pravila, da omogočite osnovne storitve, vključno z Gitom. Komentarji so samo tam za informacije. Ne poskušajte jih zagnati.

# SSH $ sudo ufw dovoli v ssh $ sudo ufw dovoli ssh # HTTP in HTTPS za splet $ sudo ufw dovoli v http $ sudo ufw dovoli http $ sudo ufw dovoli v https $ sudo ufw dovoli https # NTP za ohranjanje časa pravilno $ sudo ufw dovoli v ntp $ sudo ufw dovoli ntp # Port 53 za ločljivost domene DNS $ sudo ufw dovoli v 53 $ sudo ufw dovoli 53 # Tega verjetno ne boš potreboval # Če vaš strežnik uporablja DHCP, odblokirajte 67 $ sudo ufw dovoli v 67 $ sudo ufw dovoli 67 # Končno, Git $ sudo ufw dovoli v 9418 $ sudo ufw dodelite 9418

Prepričajte se, da je vse dobro, in omogočite požarni zid

$ sudo ufw enable

Stanje požarnega zidu lahko preverite z naslednjim:

$ sudo ufw status

To je to! Vaš Gitlab strežnik je za požarnim zidom.

Zaključne misli

Do zdaj imate delujoč Gitlab strežnik. Z vmesnikom Gitlab lahko začnete z nastavljanjem uporabniških računov in projektov. Gitlab je zdaj običajen paket Ubuntu, zato se bo redno posodabljal z apt, ko boste sistem posodabljali.

Gitlab vam bo zagotovil vso prožnost, ki jo boste potrebovali za upravljanje svojih projektov in večjih projektov, na katerih boste morda sodelovali z ekipo. To je povsem sposobna in robustna platforma, na katero se začenja zanesti vse več ekip.

Gostite lastne programske projekte z gitlabom