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 apt
sudo 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 apt
sudo 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.1
sudo 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, dnevnik
sudo chown -R git: git / var / lib / gitea /
sudo chmod -R 750 / var / lib / gitea /
sudo mkdir / etc / gitea
sudo chown root: git / etc / gitea
sudo 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-reload
sudo 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:
- Vrsta zbirke podatkov: SQLite3
- Pot: uporabite absolutno pot,
/ var / lib / gitea / data / gitea.db
Splošne nastavitve aplikacije:
- Naslov spletnega mesta: Vnesite ime svoje organizacije.
- Korenska pot skladišča: pustite privzeto
var / lib / gitea / data / gitea-repozitoriji
. - Git LFS Root Path: pustite privzeto
/ var / lib / gitea / data / lfs
. - Zaženi kot uporabniško ime: git
- Domena strežnika SSH: vnesite svojo domeno ali naslov IP strežnika.
- Vrata SSH: 22, spremenite ga, če SSH posluša druga vrata
- Prisluškovalna vrata Gitea HTTP: 3000
- Osnovni URL Gitea: uporabite http in naslov IP vaše domene ali strežnika.
- Pot dnevnika: pustite privzeto
/ var / lib / gitea / log
Č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 / gitea
sudo 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:
- Kako namestiti Nginx na Ubuntu 20.04
- Zavarujte Nginx s programom Let's Encrypt v Ubuntu 20.04
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.comstrež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.
Ustavite storitev Gitea:
sudo systemctl stop gitea
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-amd64
sudo mv / tmp / gitea / usr / local / bin
Naredite binarno izvedljivo:
sudo chmod + x / usr / local / bin / gitea
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.