- Gitea este o alternativă ușoară la GitLab și GitHub, care consumă foarte puține resurse de sistem.
- Instalarea se bazează pe un fișier binar executabil gestionat ca serviciu prin SystemD.
- Utilizarea unui proxy invers cu Nginx este esențială pentru a permite accesul securizat prin HTTPS.
- Permite migrarea depozitelor existente de pe alte platforme, păstrând în același timp problemele și etichetele.

Dacă te-ai săturat să te bazezi pe regulile, costurile sau disponibilitatea unor giganți precum GitHub sau GitLab, construirea propriei infrastructuri este calea de urmat. A avea un server Git acasă sau în propriul birou îți oferă cheile regatului: control absolut asupra codului , gestionarea totală a accesului și liniștea sufletească de a nu avea limitări din partea terților asupra depozitelor tale private.
Printre toate opțiunile disponibile, Gitea iese în evidență ca o bijuterie. Este un instrument scris în Go, ceea ce îl face incredibil de ușor și rapid , ideal pentru cei care nu doresc să dedice 16 GB de RAM unui server Git. Spre deosebire de GitLab, care este un transatlantic bogat în funcții, dar care necesită multe resurse, Gitea este ca o barcă cu motor: merge direct la subiect, consumă foarte puține resurse și oferă o interfață foarte familiară pentru oricine a folosit GitHub.
Comparație rapidă: Gitea, GitLab și Forgejo

Înainte de a te apuca de instalare, merită să știi în ce te bagi. GitLab este opțiunea prin excelență pentru întreprinderi, ideală pentru echipe mari care au nevoie de CI/CD integrat, dar necesită hardware puternic. Gitea, pe de altă parte, este cea mai bună alegere pentru servere modeste sau proiecte personale datorită amprentei sale de memorie foarte mici. În cele din urmă, există Forgejo, o ramură comunitară a Gitea; dacă ești un purist al software-ului liber și preferi o guvernanță deschisă fără conotații corporative, aceasta este alternativa pentru tine.
Ce ai nevoie înainte de a începe

Pentru a vă asigura că totul funcționează fără probleme, asigurați-vă că aveți un server Linux (fie Ubuntu, Debian, fie Rocky Linux) cu acces root. De asemenea, este esențial să aveți Git instalat pe mașină și, deși Gitea permite utilizarea SQLite, pentru mediile de producție, PostgreSQL sau MariaDB sunt foarte recomandate pentru a garanta stabilitatea datelor.
Pregătirea terenului în sistem

Rularea Gitea ca root nu este o idee bună din motive de securitate. Cel mai bine este să creați un utilizator dedicat. Puteți face acest lucru rulând comanda adduser --system --shell /bin/bash --group --home /home/gitea giteaEste esențial să se utilizeze /bin/bash ca shell deoarece Gitea trebuie să interacționeze cu git-shell prin SSH. Dacă nu aveți deja Git instalat, un simplu apt install git va rezolva rapid problema.
Instalare binară și structura folderelor

Gitea poate fi instalat în mai multe moduri, dar versiunea binar este cea mai simplă. Ar trebui să găsiți cea mai recentă versiune stabilă pe site-ul său oficial și să o descărcați folosind [method/method]. wget en /usr/local/bin/giteadându-l mai târziu permisiuni de executare cu chmod +xPentru ca programul să funcționeze corect, trebuie create o serie de directoare specifice: /etc/gitea pentru configurare și /var/lib/gitea pentru date personalizate, jurnale și fișiere. Nu uitați să ajustați permisiuni de proprietate (chown) astfel încât utilizatorul gitea să le poată scrie.
Configurarea bazei de date
Dacă alegeți PostgreSQL, va trebui să instalați pachetul și să creați un rol specific cu o parolă puternică, pe lângă baza de date. giteadb cu codificare UTF8. Dacă preferați MariaDB, procesul este similar: creați baza de date și utilizatorul, asigurându-vă că motorul de stocare este InnoDB și că serverul ascultă pe portul 3306.
Automatizare cu SystemD
Pentru a evita pornirea manuală a Gitea de fiecare dată când reporniți serverul, cel mai bine este să creați un fișier de unitate în /etc/systemd/system/gitea.serviceAcest fișier îi spune sistemului că Gitea trebuie să fie administrat ca un serviciudefinind utilizatorul, grupul și calea binară. Odată creat, pur și simplu executați systemctl enable --now gitea iar serverul va începe să asculte, în mod implicit, pe portul 3000.
Primul contact cu interfața web
La intrare http://tu-ip:3000Veți întâlni apoi expertul de configurare. Aici conectați baza de date (specificând gazda, numele de utilizator și parola) și definiți setări generale ale site-ului, cum ar fi numele instanței și adresa URL de bază. De asemenea, este timpul să configurați serverul SSH și să decideți dacă doriți ca oricine să se poată înregistra sau dacă preferați... dezactivați jurnalizarea publică pentru a păstra serverul privat.
Securitate și acces profesional cu Nginx
Accesarea Gitea prin portul 3000 este ineficientă și nesigură. Soluția ideală este configurarea unui proxy invers cu Nginx . Acest lucru permite utilizatorilor să acceseze site-ul prin intermediul unui domeniu (de exemplu, git.yourdomain.com) și asigură că tot traficul este criptat folosind certificate SSL Let's Encrypt . În configurația Nginx, pur și simplu redirecționați traficul de la portul 443 către portul 3000 al Gitea, adăugând antetele X-Forwarded-For pentru a evita pierderea adresei IP reale a clientului.
Gestionarea utilizatorilor și migrarea codului
Dacă ați dezactivat înregistrarea în jurnal deschisă, puteți crea primul administrator folosind linia de comandă cu comanda gitea admin user createOdată ajuns înăuntru, puteți adăuga chei SSH publice în profilul utilizatorului pentru a clona repozitorii fără a introduce parola de fiecare dată. Dacă aveți deja cod pe GitHub, Gitea are un instrument de migrare integrat Importă automat nu doar codul, ci și problemele și etichetele.
Întreținere și reglare
Întreținerea Gitea este incredibil de ușoară. Pentru actualizare, pur și simplu descărcați noul fișier binar, înlocuiți-l pe cel vechi și reporniți serviciul. Pentru copii de rezervă, utilizați comanda gitea dump Este cel mai bun prieten al tău, pentru că generează o fișier comprimat cu totBază de date, configurare și depozite. Pentru e-mail, puteți configura un server SMTP extern (cum ar fi Gmail) sau puteți instala Postfix pe server pentru a primi notificări despre solicitările de extragere și alerte.
Implementarea Gitea vă permite să aveți o platformă de control al versiunilor robustă, ușoară și complet privată, eliminând dependența de servicii externe printr-o instalare bazată pe binare, o bază de date optimizată și un proxy invers care garantează securitatea traficului prin HTTPS.