Git ir versiju kontroles sistēma, ko izmanto programmatūras izstrādātāji, kodētāji un viltotāji, lai sadarbotos un izplatītu atvērtā pirmkoda projektus. Izmantojot Git, varat apstrādāt jebkura izmēra projektus, veikt koda izmaiņas un sapludināšanu, kā arī ļaut lietotājiem klonēt jūsu krātuves savās iekārtās. Atvērtā pirmkoda ekosistēma darbojas vietnē Git, un daudzi no MakeUseOf.com piedāvātajiem projektiem ietver GitHub resursu izmantošanu. Izmantojot Gitea, jūs varat mitināt savas pilnībā funkcionālās Git krātuves Raspberry Pi savās mājās.
Kāpēc mitināt savu Git pakalpojumu vietnē Raspberry Pi, nevis izmantot GitHub?
Ar 55 miljoniem lietotāju GitHub ir lielākā bezmaksas un atvērtā pirmkoda programmatūras krātuve uz Zemes, taču tā pašreizējais īpašnieks Microsoft nav dabiski piemērots glabātāja lomai. Iepriekšējie uzņēmuma vadītāji raksturoja Linux un vispārējo publisko licenci kā "vēzi", un lielākā daļa Microsoft produktu ir patentēti un slēgta pirmkoda.
Microsoft īpašumtiesības ir arī radījušas iespēju GitHub izpētīt dažas ētiski apšaubāmas tehnoloģijas, jo īpaši ar GitHub Copilot, AI rīku, kas palīdz programmētājiem ģenerēt kodu. Copilot tika apmācīts par datiem no GitHub, iespējams, pārkāpjot kodētāju izmantoto Creative Commons licenču noteikumus.
Izmantojot GitHub, izstrādātāji rada vēl vienu aizrīšanās punktu, kurā inovācijas var apslāpēt, iedragāt un pakļaut vieglprātīgiem traucējumiem.
Gitea ļauj iestatīt savu Git serveri vietnē Raspberry Pi
Gitea ir Gogs dakša, un tas ir kopienas pārvaldīts viegls koda mitināšanas risinājums, kas rakstīts Go un publicēts saskaņā ar MIT licenci. Tā mērķis ir izveidot atvērtāku un ātrāku izstrādes modeli nekā tā priekšgājējam, un tas darbosies iekārtās ar pat pieticīgiem resursiem, piemēram, Raspberry Pi. Jūs varēsiet strādāt ar saviem dotfailiem, pielāgoti Ubuntu ISO, Bash skripti, kā arī Java un Python utilītas, nebaidoties, ka uz tiem attieksies Digitālās tūkstošgades autortiesību likuma noņemšana, tie tiks izmantoti, lai apmācītu negodīgu programmatūru vai ka tie būs ārpus jūsu kontroles.
Kā instalēt Gitea savā Raspberry Pi
Gitea tiek piedāvātas vairākas instalēšanas metodes, taču vienkāršākā ir, izmantojot Docker. Ja jums tie vēl nedarbojas jūsu Raspberry Pi, instalējiet Docker un Docker Compose tagad.
Faili, ko glabājat savā Gitea serverī, potenciāli aizņems daudz vietas, tāpēc mēs iesakām izmantojot ārējo atmiņu ar Raspberry Pi, un izmantojot to kā Gitea instalēšanas vietu.
Izveidojiet savienojumu ar Pi, izmantojot SSH, pēc tam dodieties uz vietu, kur vēlaties instalēt Gitea, un izveidojiet jaunu direktoriju, pēc tam pārejiet uz to:
mkdir gitea
cd gitea
Izveidojiet jaunu failu ar nano:
nanodokeris-komponēt.yml
...un ielīmējiet tajā šādu kodu:
versija: "3"tīkli:
gitea:
ārējs: nepatiess
pakalpojumi:
serveris:
attēls: gitea/gitea: jaunākais
konteinera_nosaukums: gitea
vide:
- USER_UID=1000
- USER_GID=1000
- GITEA__datubāze__DB_TYPE=mysql
- GITEA__datubāze__HOST=db: 3306
- GITEA__datubāze__NAME=gitea
- GITEA__datubāze__USER=gitea
- GITEA__datubāze__PASSWD=gitea
restartēt: vienmēr
tīkli:
- Gitea
apjomi:
- ./gitea:/data
- /etc/timezone:/etc/timezone: GB
- /etc/localtime:/etc/localtime: GB
porti:
- "3000:3000"
- "222:22"
atkarīgs no:
- db
db:
attēls: mysql: 8
restartēt: vienmēr
vide:
- MYSQL_ROOT_PASSWORD=gitea
- MYSQL_USER=gitea
- MYSQL_PASSWORD=gitea
- MYSQL_DATABASE=gitea
tīkli:
- Gitea
apjomi:
- ./mysql:/var/lib/mysql
Mainiet laika joslas uz savu lokalizāciju un izvēlieties spēcīgu paroli savai datubāzei, pēc tam saglabājiet un izejiet no nano ar Ctrl+O, tad Ctrl+X.
Ievadiet:
docker-compose up -d
…lai atvērtu doka komponēšanu atdalītajā režīmā. Docker-compose izvilks vairākus Gitea un Maria DB attēlus un iestatīs konteinerus. Atkarībā no savienojuma ātruma tas var aizņemt kādu laiku.
Atgriežoties komandu uzvednē:
docker-compose ps
…jārāda "gitea" un "gitea_db_1" kā "up". Tagad varat apmeklēt savas Gitea vietnes sākotnējās konfigurācijas lapu vietnē jūsu.pi.local.ip.adrese: 3000.
Neko vēl nemainiet. Ja plānojat piekļūt savai Gitea instancei internetā, vispirms nedaudz vairāk jāsagatavojas.
Piekļūstiet savai Gitea instancei internetā
Lai varētu sasniegt savu Gitea instanci, vēlaties ievadīt standarta URL, tāpēc jums būs nepieciešams Apache, lai apstrādātu starpniekserveri. Instalējiet Apache ar:
sudo apt uzstādīt apache2
Tagad palaidiet un iespējojiet Apache ar šādām komandām:
sudo systemctl sākt apache2
sudo systemctl iespējot apache2
Iespējojiet Apache starpniekservera moduļus ar:
sudo a2enmod starpniekserveris
sudo a2enmod proxy_http
Izvēlieties domēna nosaukumu vai apakšdomēna nosaukumu no cienījama reģistratūras. Pēc tam reģistratūras iestatījumu lapā atrodiet opcijas Advanced DNS (Papildu DNS) un pievienojiet jaunu A ieraksts. Iestatiet Uzņēmēja lauks uz "@" un vērtības lauku uz jūsu statisko IP adresi. Iestatiet pēc iespējas zemāku TTL (Time to Lease) vērtību, pēc tam saglabājiet.
Atveriet maršrutētāja administratora lapu un atrodiet sadaļu ar nosaukumu Portu pārsūtīšana, Portu kartēšana, vai Ostas vadība.
Izveidojiet jaunu ierakstu HTTP pieprasījumiem. Iestatiet gan vietējo, gan publisko portu uz 80, un vietējā IP adrese uz jūsu Raspberry Pi IP adresi.
HTTPS pieprasījumiem ir nepieciešams otrs atvērts ports. Iestatiet gan vietējo, gan publisko portu uz 443un atkal vietējā IP adrese jūsu Pi IP adresei.
Visbeidzot, jums ir nepieciešams ports, kas ir atvērts SSH pieprasījumiem jūsu Git serverim. Iestatiet gan vietējo, gan publisko portu uz 222, un vietējā IP adrese uz jūsu Pi IP adresi.
Lai iegūtu drošības sertifikātus un atslēgas, jūs izmantosit Certbot. Pievienojiet Certbot repozitoriju, atjauniniet un pēc tam instalējiet Certbot:
sudo add-apt-repository ppa: certbot/certbot
sudo apt Atjaunināt
sudo apt-gūt instalējiet python3-certbot-apache
Mainiet direktorijus un izveidojiet jaunu failu ar nano:
cd /etc/apache2/sites-available/
nanogitea.conf
Jaunajā failā ielīmējiet tālāk norādīto, pārliecinoties, ka iekopējat savu domēna nosaukumu:
<VirtualHost *:80>Servera nosaukums jūsu-domēna-nosaukums.tldProxyPass / http://127.0.0.1:3000/ProxyPassReverse / http://127.0.0.1:3000/ProxyPreserveHost On</VirtualHost>
Saglabājiet un izejiet no nano ar Ctrl + O, tad Ctrl + Xun iespējojiet savu jauno conf failu ar:
sudoa2ensitegitea.conf
Restartējiet Apache:
Restartējiet sudo pakalpojumu apache2
Palaidiet Certbot ar:
sudo certbot
…un sarakstā atlasiet savu domēna nosaukumu. Certbot iegūs un instalēs sertifikātus un atslēgas. Kad tiekat atgriezta uzvednē, restartējiet Apache vēlreiz:
Restartējiet sudo pakalpojumu apache2
Gitea instances iestatīšana
Tagad varat apmeklēt savu Gitea gadījumu pārlūkprogrammā ar adresi https://your-domain-name.tld. Pirmajā sadaļā varēsiet iestatīt datu bāzes veidu, paroli un citus mainīgos. Tās būs vērtības, kuras norādījāt savā Docker-compose failā, un tām jau ir jābūt aizpildītām, tāpēc tās nav jāmaina.
In Vispārīgie iestatījumi, iestatiet Mājas lapas nosaukums uz piemērotu, Servera domēns jābūt jūsu domēna vārdam un SSH servera ports jāiestata uz 222. Pamata URL ir jābūt jūsu domēna nosaukumam, tostarp “HTTPS://”.
Kad esat pabeidzis, nospiediet lielo zilo Instalējiet Gitea pogu. Jūs sagaidīs liela zaļa tējas krūze un neatkarīgi no tā, kādu vārdu un gliemezi norādīsit šai instancei. Lai izveidotu savu pirmo lietotāju, lapas augšējā labajā stūrī noklikšķiniet uz Reģistrēties, pēc tam ievadiet savus datus. Apsveicam!
Lai kāds cits neļautu reģistrēties un mitināt savas krātuves jūsu Git serverī, jums ir jārediģē app.ini failu. Ja sākotnēji izveidojāt savu gitea direktorijā / (saknes) direktorijā, ievadiet:
nano /gitea/gitea/gitea/conf/app.ini
Ritiniet uz leju līdz pakalpojumu sadaļai un iestatiet DISABLE_REGISTRATION uz patiesību.
Saglabājiet un izejiet no nano ar Ctrl + O, tad Ctrl + X, pēc tam restartējiet konteinerus:
docker-compose downdocker-compose up -d
Izmantojot Gitea
Ja kādreiz esat izmantojis GitHub, Giteā jūs uzreiz būsiet kā mājās. Pēc pieteikšanās redzēsit, ka nav pieejama neviena krātuves. Izveidojiet to, noklikšķinot uz + parakstiet lapas labajā pusē un piešķiriet tai saprātīgu nosaukumu.
Varat izvēlēties padarīt repozitoriju privātu, atzīmējot izvēles rūtiņu, vai atstāt to atvērtu, lai pasaule to redzētu. Atzīmējiet izvēles rūtiņu, lai inicializētu ar readme failu, un pēc tam noklikšķiniet uz Izveidot repozitoriju lai izveidotu savu pirmo repozitoriju! Varat veikt un apstiprināt izmaiņas, augšupielādēt failus un rediģēt tā, it kā tas būtu GitHub.
Klikšķiniet uz SSH lai kopētu adresi, un jūs nevarēsiet klonēt repozitorijus uz savu vietējo mašīnu, tā vietā saņemot kļūdu: "Lūdzu, pārliecinieties, vai jums ir pareizas piekļuves tiesības un repozitorijs pastāv". Vispirms Gitea jāpievieno vietējās mašīnas SSH atslēga. Lai to izdarītu, kopējiet izvadi no:
kaķis ~/.ssh/id_rsa.pub
Savā Gitea tīmekļa saskarnē noklikšķiniet uz sava profila attēla un pēc tam izvēlieties iestatījumi> SSH/GPG atslēgas. Klikšķiniet uz Pievienot atslēguun ielīmējiet tikko nokopēto atslēgu.
Tagad varat mijiedarboties ar savu Git repozitoriju savā Git serverī savā Raspberry Pi!
Izmantojiet savu Gitea instanci, lai izveidotu lieliskus programmatūras projektus
Git ir lielisks rīks sadarbībai brīnišķīgos projektos, taču pat bez komandas tas ir fantastisks, lai organizētu savu darbplūsmu un izveidotu pasakainu programmatūru vai konfigurācijas. Izmantojiet to, lai palīdzētu sekot līdzi saviem failiem, apgūstot jaunu programmēšanas valodu vai pielāgojot darbvirsmas sistēmu, lai tā būtu vislabākā.