Linux

Kako namestiti Gitea na Ubuntu 20.04

Kako namestiti Gitea na Ubuntu 20.04

Gitea je hiter in enostaven za uporabo gostiteljski git strežnik, napisan v storitvi Go. Vključuje urejevalnik datotek repozitorija, sledenje težavam projektov, upravljanje uporabnikov, obvestila, vgrajeni wiki in še veliko več.

Gitea je lahka aplikacija in jo je mogoče namestiti na sisteme z majhno močjo. Če iščete alternativo Gitlabu z veliko manjšim pomnilniškim odtisom in ne potrebujete vseh zvokov, ki jih ponuja Gitlab, poskusite Gitea.

V tem članku je razloženo, kako namestiti in konfigurirati Gitea v Ubuntu 20.04.

Pogoji #

Gitea podpira SQLite, PostgreSQL in MySQL / MariaDB kot zaledje baze podatkov.

SQLite je priporočljiv samo za majhne namestitve. Večje namestitve bi morale uporabljati MySQL ali PostgreSQL.

SQLite bomo uporabili kot bazo podatkov za Gitea. Če SQLite ni nameščen v vašem sistemu Ubuntu, ga namestite tako, da kot uporabnik sudo vnesete naslednje ukaze:

posodobitev sudo aptsudo apt namestite sqlite3

Namestitev Gitea #

Gitea ponuja Dockerjeve slike in jo je mogoče namestiti iz vira, binarno in v paketu. Giteo bomo namestili iz binarne različice.

Namestite Git #

Prvi korak je namestitev Gita na strežnik:

posodobitev sudo aptsudo apt namestite git

Namestitev preverite tako, da prikažete različico Git:

git - različica
git različica 2.25.1 

Ustvari uporabnika Git

Ustvarite novega uporabnika sistema, ki bo zagnal aplikacijo Gitea, tako da vnesete:

sudo adduser \ --sistem \ --lupina / bin / bash \ --gecos 'Nadzor različice Git' \ --skupina \ --disabled-password \ --home / home / git \ git

Zgornji ukaz ustvari novega uporabnika in skupino z imenom git, in nastavite domači imenik na / home / git. Rezultat bo videti spodaj:

Dodajanje sistemskega uporabnika 'git' (UID 112) ... Dodajanje nove skupine 'git' (GID 118) ... Dodajanje novega uporabnika 'git' (UID 112) s skupino 'git' ... Ustvarjanje domačega imenika '/ home / git' .. 

Prenesite binarno datoteko Gitea #

Pojdite na stran za prenos Gitea in prenesite najnovejšo binarno datoteko za svojo arhitekturo. V času pisanja je najnovejša različica 1.10.2. Če je na voljo nova različica, spremenite RAZLIČICA spremenljivka v spodnjem ukazu.

Uporaba wget prenesti binarno datoteko Gitea v / tmp imenik:

RAZLIČICA = 1.14.1sudo wget -O / tmp / gitea https: // dl.gitea.io / gitea / $ VERSION / gitea - $ VERSION -linux-amd64

Lahko zaženete gitea binarno s katere koli lokacije. Upoštevali bomo dogovor in premaknili binarno datoteko v / usr / local / bin imenik:

sudo mv / tmp / gitea / usr / local / bin

Naredite binarno izvedljivo:

sudo chmod + x / usr / local / bin / gitea

Zaženite spodnje ukaze, da ustvarite imenike in nastavite zahtevana dovoljenja in lastništvo:

sudo mkdir -p / var / lib / gitea / po meri, podatki, dnevniksudo chown -R git: git / var / lib / gitea /sudo chmod -R 750 / var / lib / gitea /sudo mkdir / etc / giteasudo chown root: git / etc / giteasudo chmod 770 / etc / gitea

Zgornjo strukturo imenikov priporoča uradna dokumentacija Gitea.

Dovoljenja / etc / gitea imenik nastavljen na 770 tako da lahko čarovnik za namestitev ustvari konfiguracijsko datoteko. Po končani namestitvi bomo nastavili bolj omejevalna dovoljenja.

Ustvari datoteko Systemd Unit #

Giteo bomo vodili kot sistemsko storitev.

Prenesite vzorčno datoteko sistemske enote v / etc / systemd / system imenik s tipkanjem:

sudo wget https: // raw.githubusercontent.com / go-gitea / gitea / main / contrib / systemd / gitea.storitev -P / etc / systemd / system /

Datoteke ni treba urejati, nastavljena je tako, da ustreza naši nastavitvi.

Omogočite in zaženite storitev Gitea:

sudo systemctl daemon-reloadsudo systemctl enable --now gitea

Preverite, ali Gitea deluje:

sudo systemctl status gitea
● gitea.storitev - Gitea (Git s skodelico čaja) Naloženo: naloženo (/ etc / systemd / system / gitea.storitev; omogočeno; prednastavitev prodajalca: omogočeno) Aktivno: aktivno (v teku) od čet. 2021-05-06 05:32:04 UTC; Pred 7 s Glavni PID: 77781 (gitea) Naloge: 6 (omejitev: 470) Spomin: 130.6M CGroup: / sistem.rezina / gitea.storitev └─77781 / usr / local / bin / gitea web --config / etc / gitea / app.ini .. 

Konfigurirajte Gitea #

Zdaj, ko je Gitea prenesena in deluje, lahko namestitev dokončamo prek spletnega vmesnika.

Gitea privzeto posluša povezave na vratih 3000 na vseh omrežnih vmesnikih.

Če na vašem strežniku deluje požarni zid UFW, boste morali odpreti vrata Gitea. Omogočiti promet na pristanišču 3000, vnesite naslednji ukaz:

sudo ufw dovoli 3000 / tcp

Odprite brskalnik, vnesite http: // YOUR_DOMAIN_IR_IP: 3000, in prikazal se bo zaslon, podoben temu:

Nastavitve zbirke podatkov:

Splošne nastavitve aplikacije:

Nastavitve lahko kadar koli spremenite z urejanjem konfiguracijske datoteke Gitea.

Če želite začeti namestitev, pritisnite gumb »Namesti Gitea«.

Namestitev je takojšnja. Po zaključku boste preusmerjeni na prijavno stran.

Kliknite »Potrebujete račun? Registriraj se zdaj.”Povezava. Prvi registrirani uporabnik se samodejno doda v skupino skrbnikov.

Spremenite dovoljenja konfiguracijske datoteke Gitea na samo za branje z uporabo:

sudo chmod 750 / etc / giteasudo chmod 640 / etc / gitea / app.ini

To je to. Gitea je nameščena na vašem računalniku Ubuntu.

Konfiguriranje Nginxa kot SSL končnega strežnika #

Ta korak ni obvezen, vendar je zelo priporočljiv. Prekinitev SSL pomeni, da bo Nginx deloval kot posredniška točka med aplikacijo Gitea in spletnimi odjemalci, tako da lahko do Gitee dostopate prek HTTPS.

Če želite Nginx uporabljati kot obratni proxy, morate imeti domeno ali poddomeno, ki kaže na javni IP vašega strežnika. V tem primeru bomo uporabili git.primer.com.

Najprej namestite Nginx in ustvarite brezplačno potrdilo Let's Encrypt SSL s pomočjo spodnjih vodnikov:

Ko končate, odprite urejevalnik besedil in uredite datoteko bloka domenskega strežnika:

sudo nano / etc / nginx / sites-enabled / git.primer.com
/ etc / nginx / sites-enabled / git.primer.com
strežnik poslušaj 80; ime_strežnika git.primer.com; vključi odrezke / letsencrypt.conf; vrni 301 https: // git.primer.com $ request_uri;  strežnik poslušaj 443 ssl http2; ime_strežnika git.primer.com; proxy_read_timeout 720s; proxy_connect_timeout 720s; proxy_send_timeout 720s; client_max_body_size 50m; # Proxy glave proxy_set_header X-Forwarded-Host $ host; proxy_set_header X-Forwarded-For $ proxy_add_x_forwarded_for; proxy_set_header shema X-Forwarded-Proto $; proxy_set_header X-Real-IP $ remote_addr; # SSL parametri ssl_certificate / etc / letsencrypt / live / git.primer.com / polna veriga.pem; ssl_certificate_key / etc / letsencrypt / live / git.primer.com / privkey.pem; ssl_trusted_certificate / etc / letsencrypt / live / git.primer.com / veriga.pem; vključuje delčke / letsencrypt.conf; vključi odrezke / ssl.conf; # dnevniške datoteke access_log / var / log / nginx / git.primer.com.dostop.dnevnik; error_log / var / log / nginx / git.primer.com.napaka.dnevnik; # Obravnava / zahteva lokacijo / proxy_redirect off; proxy_pass http: // 127.0.0.1: 3000;  

Ne pozabite zamenjati git.primer.com z domeno Gitea in nastavite pravilno pot do datotek s potrdilom SSL. Promet HTTP je preusmerjen na HTTPS

Znova zaženite storitev Nginx, da bodo spremembe začele veljati:

sudo systemctl znova zaženite nginx

Nato spremenite domeno Gitea in korenski URL. Če želite to narediti, odprite konfiguracijsko datoteko in uredite naslednje vrstice:

sudo nano / etc / gitea / app.ini
/ etc / gitea / app.ini
[strežnik] DOMENA = git.primer.com ROOT_URL = https: // git.primer.com / 

Znova zaženite storitev Gitea, tako da vnesete:

sudo systemctl znova zaženite gitea

Na tej točki je konfiguriran proxy Gitea, do katerega lahko dostopate na: https: // git.primer.com

Konfiguriranje e-poštnih obvestil #

Če želite, da vam primerek Gitea pošilja e-poštna obvestila, lahko namestite Postfix ali uporabite kakšno transakcijsko poštno storitev, kot so SendGrid, MailChimp, MailGun ali SES.

Če želite omogočiti e-poštna obvestila, odprite konfiguracijsko datoteko in uredite naslednje vrstice:

sudo nano / etc / gitea / app.ini
/ etc / gitea / app.ini
[mailer] ENABLED = true HOST = SMTP_SERVER: SMTP_PORT FROM = SENDER_EMAIL USER = SMTP_USER PASSWD = YOUR_SMTP_PASSWORD 

Poskrbite, da ste vnesli pravilne podatke o strežniku SMTP.

Znova zaženite storitev Gitea, da bodo spremembe začele veljati:

sudo systemctl znova zaženite gitea

Če želite preveriti nastavitve in poslati preizkusno e-pošto, se prijavite v Gitea in pojdite na: Administracija spletnega mesta> Konfiguracija> Konfiguracija SMTP pošiljatelja.

Gitea vam omogoča tudi povezavo s Slackom z ustvarjanjem spletnega spletnega kavlja in pošiljanjem obvestil na vaše kanale Slack .

Nadgradnja Gitea #

Če želite nadgraditi na najnovejšo različico Gitea, preprosto prenesite in zamenjajte binarno datoteko.

  1. Ustavite storitev Gitea:

    sudo systemctl stop gitea
  2. Prenesite najnovejšo različico Gitee in jo premaknite na / usr / local / bin imenik:

    RAZLIČICA =wget -O / tmp / gitea https: // dl.gitea.io / gitea / $ VERSION / gitea - $ VERSION -linux-amd64sudo mv / tmp / gitea / usr / local / bin
  3. Naredite binarno izvedljivo:

    sudo chmod + x / usr / local / bin / gitea
  4. Znova zaženite storitev Gitea:

    sudo systemctl znova zaženite gitea

To je to.

Zaključek #

Ta vadnica vas je vodila skozi namestitev Gitee na Ubuntu 20.04. Za več informacij o tem, kako konfigurirati primerek Gitea in ustvariti svoj prvi projekt, obiščite stran z dokumentacijo Gitea .

Če imate vprašanja, pustite komentar spodaj.

Vadnica za OpenTTD
OpenTTD je ena izmed najbolj priljubljenih poslovnih simulacijskih iger. V tej igri morate ustvariti čudovit prevozniški posel. Vendar boste začeli na...
SuperTuxKart za Linux
SuperTuxKart je odličen naslov, zasnovan tako, da vam brezplačno ponuja izkušnjo Mario Kart v vašem sistemu Linux. Igrati je precej zahtevno in zabavn...
Vadnica za bitko za Wesnoth
Bitka za Wesnoth je ena izmed najbolj priljubljenih odprtokodnih strateških iger, ki jih lahko trenutno igrate. Ne samo, da se ta igra razvija že zelo...