Git je systém na správu verzií, ktorý používajú vývojári softvéru, kóderi a drotári na spoluprácu a distribúciu projektov s otvoreným zdrojovým kódom. Pomocou Gitu môžete spracovať projekty akejkoľvek veľkosti, zaviesť zmeny a zlúčenie kódu a umožniť používateľom klonovať vaše úložiská na ich vlastné počítače. Ekosystém s otvoreným zdrojovým kódom beží na serveri Git a mnohé z projektov na stránke MakeUseOf.com zahŕňajú využívanie zdrojov z GitHubu. S Gitea môžete hostiť svoje vlastné plne funkčné úložiská Git na Raspberry Pi vo svojom vlastnom dome.
Prečo hostiť svoju vlastnú službu Git na Raspberry Pi namiesto používania GitHub?
S 55 miliónmi používateľov GitHub je najväčšie úložisko bezplatného a open source softvéru na Zemi, ale jeho súčasný vlastník, spoločnosť Microsoft, sa prirodzene nehodí na úlohu správcu. Predchádzajúci generálni riaditelia spoločnosti opísali Linux a všeobecnú verejnú licenciu ako „rakovinu“ a väčšina vlastných produktov spoločnosti Microsoft je proprietárny a uzavretý zdroj.
Vlastníctvo spoločnosti Microsoft tiež videlo GitHub, ktorý skúmal niektoré eticky pochybné technológie – najmä GitHub Copilot, nástroj AI, ktorý pomáha programátorom generovať kód. Copilot bol vyškolený na údajoch z GitHubu, čo je možné v rozpore s podmienkami licencií Creative Commons, ktoré používajú kóderi.
Používaním GitHub vývojári vytvárajú ďalší úzky bod, v ktorom môžu byť inovácie potlačené, podkopané a vystavené frivolným zásahom.
Gitea vám umožní nastaviť si vlastný Git server na Raspberry Pi
Gitea je fork Gogs a je komunitou spravované ľahké riešenie hostenia kódu napísané v Go a publikované pod licenciou MIT. Jeho cieľom je mať otvorenejší a rýchlejší model vývoja ako jeho predchodca a bude fungovať na strojoch s ešte skromnejšími zdrojmi, ako je napríklad Raspberry Pi. Budete môcť pracovať na svojich dotfiles, vlastné Ubuntu ISO, skripty Bash a obslužné programy Java a Python bez obáv, že budú predmetom zastavenia šírenia podľa zákona DMCA, že sa použijú na trénovanie škodlivého softvéru alebo budú inak mimo vašej kontroly.
Ako nainštalovať Gitea na Raspberry Pi
Gitea prichádza s niekoľkými spôsobmi inštalácie, ale najjednoduchší je cez Docker. Ak ich ešte nemáte na svojom Raspberry Pi spustené, nainštalujte Docker a Docker Compose teraz.
Súbory, ktoré uložíte na server Gitea, budú potenciálne zaberať veľa miesta, preto odporúčame pomocou externého úložiska s vaším Raspberry Pia použiť ho ako miesto pre inštaláciu Gitea.
Pripojte sa k svojmu Pi cez SSH, potom prejdite na miesto, kde chcete nainštalovať Gitea, a vytvorte nový adresár, potom sa doň presuňte:
mkdir gitea
cd gitea
Vytvorte nový súbor s nano:
nanodocker-compose.yml
...a vložte do nej nasledujúci kód:
verzia: "3"siete:
gitea:
vonkajší: falošný
služby:
server:
obrázok: gitea/gitea: najnovšie
názov_kontajnera: gitea
prostredie:
- USER_UID=1000
- USER_GID=1000
- GITEA__database__DB_TYPE=mysql
- GITEA__database__HOST=db: 3306
- GITEA__database__NAME=gitea
- GITEA__database__USER=gitea
- GITEA__database__PASSWD=gitea
reštart: vždy
siete:
- gita
objemy:
- ./gitea:/data
- /etc/timezone:/etc/timezone: gb
- /etc/localtime:/etc/localtime: gb
porty:
- "3000:3000"
- "222:22"
záleží na:
- db
db:
obrázok: mysql: 8
reštart: vždy
prostredie:
- MYSQL_ROOT_PASSWORD=gitea
- MYSQL_USER=gitea
- MYSQL_PASSWORD=gitea
- MYSQL_DATABASE=gitea
siete:
- gita
objemy:
- ./mysql:/var/lib/mysql
Zmeňte časové pásma na svoje vlastné miestne nastavenie a vyberte si silné heslo pre svoju databázu, potom uložte a ukončite nano pomocou Ctrl + O, potom Ctrl + X.
Zadajte:
docker-zložiť -d
...vyvolať docker-compose v oddelenom režime. Docker-compose vytiahne viacero obrázkov pre Gitea a Maria DB a nastaví kontajnery. V závislosti od rýchlosti vášho pripojenia to môže chvíľu trvať.
Keď sa vrátite do príkazového riadka:
docker-compose ps
…má zobrazovať „gitea“ a „gitea_db_1“ ako „hore“. Teraz môžete navštíviť úvodnú konfiguračnú stránku pre vašu lokalitu Gitea na adrese vaša.pi.lokálna.ip.adresa: 3000.
Zatiaľ nič nemeňte. Ak plánujete pristupovať k svojej inštancii Gitea cez internet, musíte sa najprv trochu pripraviť.
Získajte prístup k svojej inštancii Gitea cez internet
Chcete mať možnosť zadať štandardnú adresu URL, aby ste sa dostali k svojej inštancii Gitea, takže na obsluhu proxy servera budete potrebovať Apache. Nainštalujte Apache pomocou:
sudo apt Inštalácia apache2
Teraz spustite a povoľte Apache pomocou nasledujúcich príkazov:
sudo systemctl začať apache2
sudo systemctl povoliť apache2
Povoľte moduly proxy servera Apache pomocou:
sudo a2enmod proxy
sudo a2enmod proxy_http
Vyberte názov domény alebo názov subdomény od renomovaného registrátora. Potom na stránke nastavení registrátora nájdite možnosti „Rozšírené DNS“ a pridajte nový A záznam. Nastaviť Hostiteľ pole do "@" a pole hodnoty na vašu statickú IP adresu. Nastavte hodnotu TTL (Time to Lease) na čo najnižšiu hodnotu a potom uložte.
Otvorte stránku správcu smerovača a nájdite sekciu s názvom buď Presmerovanie portov, Mapovanie prístavov, alebo Správa prístavov.
Vytvorte novú položku pre požiadavky HTTP. Nastavte miestny aj verejný prístav na 80a lokálna IP adresa na IP adresu vášho Raspberry Pi.
Pre požiadavky HTTPS je potrebný druhý otvorený port. Nastavte miestny aj verejný prístav na 443a opäť lokálna IP adresa na IP adresu vášho Pi.
Nakoniec potrebujete otvorený port pre požiadavky SSH na váš server Git. Nastavte miestny aj verejný prístav na 222a lokálna IP adresa na IP adresu vášho Pi.
Na získanie bezpečnostných certifikátov a kľúčov budete používať Certbot. Pridajte úložisko Certbot, aktualizujte a potom nainštalujte Certbot:
sudo add-apt-repository ppa: certbot/certbot
sudo apt aktualizovať
sudo apt-dostať nainštalujte python3-certbot-apache
Zmeňte adresáre a vytvorte nový súbor pomocou nano:
cd /etc/apache2/sites-available/
nanogitea.conf
Do nového súboru prilepte nasledovné a uistite sa, že ste skopírovali svoj vlastný názov domény:
<VirtualHost *:80>ServerName názov vašej-domény.tldProxyPass / http://127.0.0.1:3000/ProxyPassReverse / http://127.0.0.1:3000/ProxyPreserveHost On</VirtualHost>
Uložte a ukončite nano pomocou Ctrl + O, potom Ctrl + Xa povoľte svoj nový súbor conf pomocou:
sudoa2ensitegitea.conf
Reštartujte Apache:
reštart služby sudo apache2
Spustite Certbot pomocou:
sudo certbot
...a vyberte názov svojej domény zo zoznamu. Certbot načíta a nainštaluje certifikáty a kľúče. Keď sa vrátite k výzve, reštartujte Apache znova:
reštart služby sudo apache2
Nastavenie inštancie Gitea
Teraz môžete navštíviť svoju inštanciu Gitea v prehliadači s na adrese https://your-domain-name.tld. V prvej časti budete môcť nastaviť typ databázy, heslo a ďalšie premenné. Budú to hodnoty, ktoré ste zadali v súbore docker-compose a mali by už byť vyplnené, takže ich nie je potrebné meniť.
In Všeobecné nastavenia, nastaviť Názov stránky na vhodnú, Doména servera by mal byť názov vašej domény a Port servera SSH musí byť nastavené na 222. Základná adresa URL by mala byť názov vašej domény vrátane „HTTPS://“.
Keď skončíte, stlačte veľké modré Nainštalujte Gitea tlačidlo. Privíta vás veľká zelená šálka čaju a akékoľvek meno a slimák, ktorý ste inštancii dali. Ak chcete vytvoriť svojho prvého používateľa, kliknite na registráciu v pravej hornej časti stránky a zadajte svoje údaje. Gratulujem!
Ak chcete zabrániť komukoľvek inému v registrácii a hosťovaní vlastných archívov na vašom serveri Git, musíte upraviť súbor app.ini súbor. Ak ste pôvodne vytvorili svoj gitea adresár v / (koreňový) adresár, zadajte:
nano /gitea/gitea/gitea/conf/app.ini
Prejdite nadol do servisnej časti a nastavte DISABLE_REGISTRATION na pravdu.
Uložte a ukončite nano pomocou Ctrl + O, potom Ctrl + X, potom reštartujte kontajnery:
docker-compose downdocker-compose up -d
Používanie Gitea
Ak ste niekedy používali GitHub, v Gitea budete okamžite ako doma. Po prihlásení uvidíte, že nie sú k dispozícii žiadne úložiská. Vytvorte si ho kliknutím na + podpíšte vpravo na stránke a dajte jej rozumný názov.
Začiarknutím políčka môžete úložisko nastaviť ako súkromné alebo ho nechať otvorené, aby ho videl svet. Začiarknite políčko na inicializáciu pomocou súboru readme a potom kliknite Vytvoriť úložisko vytvoriť svoj prvý repozitár! Môžete vykonávať a odosielať zmeny, nahrávať súbory a upravovať, ako keby to bol GitHub.
Kliknite na SSH na skopírovanie adresy a nebudete môcť klonovať úložiská na svoj lokálny počítač, namiesto toho sa zobrazí chyba: „Uistite sa, že máte správne prístupové práva a úložisko existuje“. Najprv musíte do Gitea pridať kľúč SSH vášho lokálneho počítača. Ak to chcete urobiť, skopírujte výstup z:
mačka ~/.ssh/id_rsa.pub
Vo webovom rozhraní Gitea kliknite na svoj profilový obrázok a vyberte si nastavenie> kľúče SSH/GPG. Kliknite na Pridať kľúča vložte kľúč, ktorý ste práve skopírovali.
Teraz môžete komunikovať s vlastným úložiskom Git na svojom vlastnom serveri Git na svojom vlastnom Raspberry Pi!
Použite svoju inštanciu Gitea na vytváranie úžasných softvérových projektov
Git je úžasný nástroj na spoluprácu na úžasných projektoch, ale aj bez tímu je fantastický na organizovanie vlastného pracovného postupu a vytváranie úžasného softvéru alebo konfigurácií. Použite ho na to, aby ste mali prehľad o svojich súboroch, keď sa učíte nový programovací jazyk alebo si prispôsobte svoj počítačový systém tak, aby bol čo najlepší.