Si të instaloni GitBucket në Ubuntu 16.04

Ky udhëzues mbulon instalimin dhe konfigurimin bazë të GitBucket për një shembull Vultr që ekzekuton Ubuntu 16.04 dhe supozon se po ekzekutoni komanda si non-rootpërdorues.

Parakushtet

  • Një shembull i serverit Vultr me të paktën 1 GB RAM (instancat më të vogla mund të funksionojnë, megjithëse ngadalë).
  • openjdk-8-jre Kërkohet, versionet e vjetra nuk do të funksionojnë.
  • wget Përdoret për të shkarkuar paketën GitBucket.
  • nginx Opsionale, ofron një përfaqësues të kundërt të GitBucket
  • systemd Menaxhon fillimin dhe ndalimin e procesit GitBucket

Parakushtet e instalimit

GitBucket kërkon që Java 8 ose më e reja të instalohet në serverin tuaj. Nëse nuk e keni instaluar tashmë Java 8, së pari përditësoni listat e paketave tuaja lokale.

sudo apt update

Pastaj instaloni paketën Java 8 Runtime.

sudo apt install openjdk-8-jre

Instalimi i GitBucket

Krijimi i një përdoruesi të paprivilegjuar

Do të na duhet të krijojmë një përdorues të paprivilegjuar për të ekzekutuar GitBucket përpara se të shkojmë më tej. Ekzekutimi i GitBucket nën një përdorues të paprivilegjuar e kufizon instalimin tonë nga shkrimi jashtë drejtorisë së tij të të dhënave, duke forcuar sigurinë e serverit tuaj. Ekzekutoni komandën e mëposhtme për të krijuar një përdorues të sistemit të quajtur gitbucket.

sudo adduser --system gitbucket

Për shkak se ne krijuam një përdorues të sistemit , guaska e parazgjedhur është /bin/false, dhe ne do të kthehemi në guaskën tonë aktuale nëse nuk japim një argument shtesë të guaskës gjatë ekzekutimit su. Hyni te përdoruesi i sapokrijuar.

sudo su - gitbucket -s /bin/bash

Kërkesa e guaskës suaj duhet të ndryshojë dhe ju do të identifikoheni në përdoruesin e ri të sistemit.

Shkarkimi/Përditësimi i GitBucket

Navigoni në faqen e lëshimeve të GitBucket dhe gjeni versionin më të fundit të disponueshëm. Kopjoni URL-në për gitbucket.warpaketën, verifikoni se jeni në drejtorinë kryesore të përdoruesit të ri dhe shkarkoni atë me wget.

cd ~/
wget https://github.com/gitbucket/gitbucket/releases/download/4.18.0/gitbucket.war

Ju do të duhet ta përsërisni këtë hap sa herë që dëshironi të përditësoni paketën GitBucket.

Konfigurimi fillestar i GitBucket

Pasi të jetë shkarkuar paketa, do të na duhet të nisim manualisht GitBucket për të kryer disa konfigurime fillestare.

java -jar gitbucket.war --port 8080

Nëse porti 8080është marrë tashmë nga një proces tjetër, mund të ndryshoni portën që GitBucket do të dëgjojë tani. Ky udhëzues supozon se GitBucket po dëgjon në port8080 .

Kjo do të nisë GitBucket në ndërfaqen e rrjetit publik të serverit tuaj, duke dëgjuar në portin e specifikuar. Ju duhet të shihni, pas disa çastesh, mesazhin e mëposhtëm.

INFO:oejs.Server:main: Started @15891ms

Nëse jeni duke përdorur murin e zjarrit të Vultr , do t'ju duhet të hapni portin që GitBucket po dëgjon, pasi muri i zjarrit i Vultr funksionon si një listë e bardhë, duke refuzuar trafikun për të lejuar portet, përveç nëse specifikohet ndryshe.

Instalimi juaj i GitBucket tani duhet të jetë në linjë dhe i aksesueshëm nga interneti. Duke përdorur një shfletues ueb, lidheni me adresën publike të serverit tuaj (duke qenë i sigurt që të specifikoni portin që GitBucket po funksionon, (dmth. http://203.0.113.0:8080ose http://example.com:8080) dhe do të zbarkoni në faqen kryesore të GitBucket.

Megjithatë, fjalëkalimi i llogarisë së parazgjedhur të administratorit duhet të ndryshohet. Për ta bërë këtë, identifikohuni në llogarinë e administratorit përmes Sign inbutonit në pjesën e sipërme të djathtë të ndërfaqes së internetit. Hyrja e paracaktuar për llogarinë e administratorit është rootpër emrin e përdoruesit dhe më pas rootpërsëri për fjalëkalimin. Pasi të regjistroheni, butoni do të zëvendësohet me një ikonë të profilit dhe do të lëshohet. Zgjero listën rënëse dhe zgjidhni Account Settings, më pas vendosni një fjalëkalim të ri, më të sigurt në magjistarin e cilësimeve të llogarisë.

Pasi të keni përditësuar kredencialet e llogarisë së parazgjedhur të administratorit dhe të keni verifikuar që GitBucket fillon në këtë konfigurim minimal, CTRL+Cmbyllni procesin Java me " " dhe mbyllni guaskën aktuale me exit.

Krijimi i shërbimit Systemd

Aktualisht, ne mund të ekzekutojmë GitBucket vetëm duke hyrë në serverin tonë përmes SSH dhe duke e filluar procesin nga një predhë manualisht. Për fat të mirë, Ubuntu vjen i parapaketuar me Systemd, duke na lejuar të krijojmë një shërbim me të cilin GitBucket do të fillojë automatikisht dhe do të mirëmbahet nga sistemi.

Duke përdorur nano, krijoni një skedar të ri njësi në /etc/systemd/systemdrejtori.

sudo nano /etc/systemd/system/gitbucket.service

Pastaj, kopjoni përmbajtjen e mëposhtme në skedar.

[Unit]
Description=GitBucket
After=network.target
[Service]
ExecStart=/usr/bin/java -jar /home/gitbucket/gitbucket.war --port 8080
ExecStop=/bin/kill -SIGINT $MAINPID
Type=simple
User=gitbucket
[Install]
WantedBy=multi-user.target

Ky skedar njësie përcakton sjelljen bazë të nisjes dhe mbylljes për GitBucket dhe e drejton shërbimin nën përdoruesin tonë të paprivilegjuar të sistemit në ndërfaqen e rrjetit vetëm lokal.

Nëse keni ndryshuar numrin e portit që GitBucket do të dëgjojë, ndryshoni --portargumentin për ExecStartkomandën.

Ruani (" CTRL+O") skedarin e ri të njësisë dhe më pas dilni nga redaktori (" CTRL+X"). Ju do të duhet të rifreskoni Systemd që skedari i ri i njësisë të zbulohet.

sudo systemctl daemon-reload

Pasi Systemd të jetë ringarkuar, verifikoni që njësia e re është zbuluar dhe ngarkuar.

sudo systemctl status gitbucket

Ju duhet të shihni daljen e mëposhtme.

gitbucket.service - GitBucket
   Loaded: loaded (/etc/systemd/system/gitbucket.service; disabled; vendor preset: enabled)
   Active: inactive (dead)

Së fundi, aktivizoni që njësia e re të fillojë automatikisht kur serveri juaj të fillojë dhe më pas të nisë shërbimin për herë të parë.

sudo systemctl enable gitbucket
sudo systemctl start gitbucket

Pasi të ketë filluar shërbimi, do të keni mundësi të hyni në GitBucket nga shfletuesi juaj duke përdorur adresën IP dhe numrin e portit përsëri.

Konfigurimi i përfaqësuesit të kundërt Nginx

Ndërsa dikush mund të ekspozojë GitBucket direkt përmes portit 8080, ju mund të përmirësoni performancën dhe të konfiguroni veçori të tilla si HTTP/2, enkriptimi TLS dhe rregullat e ruajtjes së memorjes duke ekspozuar GitBucket përmes Nginx.

Konfigurimi fillestar i Nginx

Nëse nuk e keni instaluar tashmë Nginx, përditësoni listat e paketave tuaja.

sudo apt update

Më pas instaloni paketën Nginx.

sudo apt install nginx

Pasi të jetë instaluar Nginx, verifikoni se jeni në gjendje të hyni në serverin e uebit përmes adresës IP të serverit tuaj pa numrin e portit (dmth. http://203.0.113.0ose http://example.com). Nëse ka sukses, do të shihni faqen e paracaktuar të uljes Nginx për Ubuntu.

Krijimi i përfaqësuesit të kundërt

Ne do të kopjojmë konfigurimin e paracaktuar të faqes /etc/nginx/sites-availablesi një pikënisje për përfaqësuesin e kundërt.

sudo cp /etc/nginx/sites-available/default /etc/nginx/sites-available/gitbucket

Hapni skedarin e konfigurimit të krijuar rishtazi me nano.

sudo nano /etc/nginx/sites-available/gitbucket

Gjeni location /bllokun ekzistues në linjën 43.

location / {
  # First attempt to serve request as file, then
  # as directory, then fall back to displaying a 404.
  try_files $uri $uri/ =404;
}

Aktualisht, Nginx do të përpiqet të kthejë skedarët e vendosur në të /var/www/htmlcilët përputhen me HTTPkërkesat hyrëse . Do të na duhet ta ndryshojmë këtë sjellje duke konfiguruar një përfaqësues të kundërt në këtë bllok, i cili do t'i dërgojë të gjitha kërkesat HTTP të bëra në serverin tonë Nginx në shembullin GitBucket. Përditëso location /bllokun që të përputhet me sa vijon.

location / {
    proxy_pass              http://localhost:8080; # The address GitBucket is listening on
    proxy_set_header        Host $host;
    proxy_set_header        X-Real-IP $remote_addr;
    proxy_set_header        X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_connect_timeout   150;
    proxy_send_timeout      100;
    proxy_read_timeout      100;
    proxy_buffers           4 32k;

    client_max_body_size    512m; # Needed for large Git operations over HTTP
    client_body_buffer_size 128k;
}

Nëse keni ndryshuar numrin e portit që do të dëgjojë GitBucket, përditësoni proxy_passopsionin për ta pasqyruar këtë.

Për të aktivizuar konfigurimin tonë të ri, do t'ju duhet të çaktivizoni konfigurimin ekzistues të paracaktuar në /etc/nginx/sites-enabled, më pas simlidhni konfigurimin tonë të ri /etc/nginx/sites-enabledme sa vijon.

sudo rm /etc/nginx/sites-enabled/default
sudo ln -s /etc/nginx/sites-available/gitbucket /etc/nginx/sites-enabled/gitbucket

Pasi të jetë aktivizuar skedari i konfigurimit, kontrolloni për ndonjë gabim sintaksor.

sudo nginx -t

Më pas, rinisni serverin Nginx për të aktivizuar konfigurimin e ri të faqes sonë.

sudo systemctl restart nginx

Tani duhet të jeni në gjendje të aksesoni instalimin tuaj GitBucket në adresën publike të serverit tuaj pa një numër porti.

Sigurimi i procesit GitBucket nga interneti publik

Aktualisht, shembulli ynë GitBucket po dëgjon në ndërfaqen e rrjetit publik të serverit tonë . Kjo do t'i lejojë përdoruesit të anashkalojnë përfaqësuesin Nginx duke u lidhur me adresën që GitBucket po dëgjon aktualisht, gjë që ka të ngjarë të jetë e padëshiruar. Do të na duhet të modifikojmë skedarin e njësisë që krijuam më parë për ta zgjidhur këtë. Hapni skedarin e njësisë me nano.

sudo nano /etc/systemd/system/gitbucket.service

Append --host 127.0.0.1ExecStartkomandës, si kështu.

...
ExecStart=/usr/bin/java -jar /home/gitbucket/gitbucket.war --port 8080 --host 127.0.0.1
...

Kjo do të bëjë që GitBucket të pranojë vetëm lidhje në ndërfaqen e rrjetit lokal të serverit tonë. Edhe një herë, ruajeni (" CTRL+O") skedarin, mbyllni (" CTRL+X") redaktorin, ringarkoni Systemd dhe rinisni njësinë tonë GitBucket.

sudo systemctl daemon-reload
sudo systemctl restart gitbucket

Nëse jeni duke përdorur Firewall-in e Vultr, duhet të hiqni gjithashtu çdo rregull porti që keni shtuar për të hyrë në serverin GitBucket gjatë konfigurimit fillestar.


Leave a Comment

Si të konfiguroni një server Tekkit Classic në Ubuntu 16.10

Si të konfiguroni një server Tekkit Classic në Ubuntu 16.10

Përdorimi i një sistemi të ndryshëm? Çfarë është Tekkit Classic? Tekkit Classic është një modpack për lojën që të gjithë e njohin dhe e duan; Minecraft. Ai përmban disa nga ver

Krijimi i një Blog Jekyll në Ubuntu 16.04

Krijimi i një Blog Jekyll në Ubuntu 16.04

Përdorimi i një sistemi të ndryshëm? Jekyll është një alternativë e shkëlqyeshme për WordPress për blogimin ose ndarjen e përmbajtjes. Nuk kërkon ndonjë bazë të dhënash dhe është shumë e lehtë i

Si të konfiguroni përmirësimet e pambikëqyrura në Debian 9 (Stretch)

Si të konfiguroni përmirësimet e pambikëqyrura në Debian 9 (Stretch)

Përdorimi i një sistemi të ndryshëm? Nëse blini një server Debian, atëherë duhet të keni gjithmonë arnimet dhe përditësimet më të fundit të sigurisë, pavarësisht nëse jeni në gjumë apo jo

Si të instaloni Squid Proxy në CentOS

Si të instaloni Squid Proxy në CentOS

Squid është një program i popullarizuar, falas Linux që ju lejon të krijoni një përfaqësues në ueb përcjellës. Në këtë udhëzues, do të shihni se si të instaloni Squid në CentOS për t'ju kthyer

Konfiguro serverin e mediave Red5 në Ubuntu 16.04

Konfiguro serverin e mediave Red5 në Ubuntu 16.04

Përdorimi i një sistemi të ndryshëm? Red5 është një server mediash me burim të hapur i implementuar në Java që ju lejon të ekzekutoni aplikacione Flash me shumë përdorues si transmetimi i drejtpërdrejtë

Si të instaloni Apache Cassandra 3.11.x në Ubuntu 16.04 LTS

Si të instaloni Apache Cassandra 3.11.x në Ubuntu 16.04 LTS

Përdorimi i një sistemi të ndryshëm? Apache Cassandra është një sistem i menaxhimit të bazës së të dhënave NoSQL falas dhe me burim të hapur që është krijuar për të ofruar shkallëzim, të lartë

Si të instaloni Apache Cassandra 3.11.x në CentOS 7

Si të instaloni Apache Cassandra 3.11.x në CentOS 7

Përdorimi i një sistemi të ndryshëm? Apache Cassandra është një sistem i menaxhimit të bazës së të dhënave NoSQL falas dhe me burim të hapur që është krijuar për të ofruar shkallëzim, të lartë

Si të instaloni Forumin Vanilla në Ubuntu 16.04

Si të instaloni Forumin Vanilla në Ubuntu 16.04

Përdorimi i një sistemi të ndryshëm? Forumi Vanilla është një aplikacion forumi me burim të hapur i shkruar në PHP. Është plotësisht i personalizueshëm, i lehtë për t'u përdorur dhe mbështet jashtëm

Si të instaloni Kanboard në Ubuntu 18.04 LTS

Si të instaloni Kanboard në Ubuntu 18.04 LTS

Përdorimi i një sistemi të ndryshëm? Hyrje Kanboard është një program softuerik për menaxhimin e projekteve me burim të lirë dhe me burim të hapur, i cili është krijuar për të lehtësuar dhe vizualizuar

Si të instaloni Kanboard në Debian 9

Si të instaloni Kanboard në Debian 9

Përdorimi i një sistemi të ndryshëm? Hyrje Kanboard është një program softuerik për menaxhimin e projekteve me burim të lirë dhe me burim të hapur, i cili është krijuar për të lehtësuar dhe vizualizuar

Instaloni Lynis në Debian 8

Instaloni Lynis në Debian 8

Hyrje Lynis është një mjet falas, me burim të hapur të auditimit të sistemit, që përdoret nga shumë administratorë të sistemit për të verifikuar integritetin dhe për të forcuar sistemet e tyre. Unë

Si të instaloni Thelia 2.3 në Debian 9

Si të instaloni Thelia 2.3 në Debian 9

Përdorimi i një sistemi të ndryshëm? Thelia është një mjet me burim të hapur për krijimin e faqeve të internetit të e-biznesit dhe menaxhimin e përmbajtjes në internet të shkruar në PHP. Kodi burimor Thelia i

Si të instaloni Microweber në CentOS 7

Si të instaloni Microweber në CentOS 7

Përdorimi i një sistemi të ndryshëm? Microweber është një CMS me burim të hapur drag and drop dhe dyqan online. Kodi burimor Microweber është pritur në GitHub. Ky udhëzues do t'ju tregojë

Si të instaloni MODX Revolution në një Ubuntu 16.04 LAMP VPS

Si të instaloni MODX Revolution në një Ubuntu 16.04 LAMP VPS

Përdorimi i një sistemi të ndryshëm? MODX Revolution është një Sistem i Menaxhimit të Përmbajtjes (CMS) i shpejtë, fleksibël, i shkallëzuar, i lirë dhe me burim të hapur, i shkallës së ndërmarrjes.

Si të instaloni Mattermost 4.1 në CentOS 7

Si të instaloni Mattermost 4.1 në CentOS 7

Përdorimi i një sistemi të ndryshëm? Mattermost është një alternativë me burim të hapur, të vetë-strehuar për shërbimin e mesazheve Slack SAAS. Me fjalë të tjera, me Mattermost, ju rreth

Si të instaloni dotCMS në Ubuntu 16.04

Si të instaloni dotCMS në Ubuntu 16.04

Përdorimi i një sistemi të ndryshëm? DotCMS është një sistem menaxhimi i përmbajtjes me burim të hapur, të nivelit të ndërmarrjes, i shkruar në Java. Ai përmban pothuajse çdo veçori të kërkuar

Si të instaloni BigTree CMS në një Fedora 26 LAMP VPS

Si të instaloni BigTree CMS në një Fedora 26 LAMP VPS

Përdorimi i një sistemi të ndryshëm? BigTree CMS 4.2 është një sistem i shpejtë dhe i lehtë, pa pagesë dhe me burim të hapur, sistem i menaxhimit të përmbajtjes së nivelit të ndërmarrjes (CMS) me një

Le të enkriptojmë në Plesk

Le të enkriptojmë në Plesk

Paneli i kontrollit Plesk përmban një integrim shumë të bukur për Lets Encrypt. Lets Encrypt është një nga ofruesit e vetëm SSL që jep plotësisht certifikata

Lejon enkriptimin në cPanel

Lejon enkriptimin në cPanel

Lets Encrypt është një autoritet certifikimi i dedikuar për të ofruar certifikata SSL pa pagesë. cPanel ka ndërtuar një integrim të pastër në mënyrë që ju dhe klienti juaj

Instaloni Adminer në Debian/Ubuntu

Instaloni Adminer në Debian/Ubuntu

Adminer është një alternativë e lehtë për phpMyAdmin. Në krahasim, madhësia totale e paketës së saj është 400 KB, kundrejt 4.2 MB të phpMyAdmin. Ndryshe nga phpMyAdmin, e cila

Ngritja e makinave: Aplikimet në botën reale të AI

Ngritja e makinave: Aplikimet në botën reale të AI

Inteligjenca Artificiale nuk është në të ardhmen, është këtu në të tashmen Në këtë blog Lexoni se si aplikacionet e inteligjencës artificiale kanë ndikuar në sektorë të ndryshëm.

Sulmet DDOS: Një përmbledhje e shkurtër

Sulmet DDOS: Një përmbledhje e shkurtër

A jeni edhe ju viktimë e Sulmeve DDOS dhe jeni konfuz në lidhje me metodat e parandalimit? Lexoni këtë artikull për të zgjidhur pyetjet tuaja.

A e keni pyetur ndonjëherë veten se si fitojnë para hakerët?

A e keni pyetur ndonjëherë veten se si fitojnë para hakerët?

Ju mund të keni dëgjuar se hakerët fitojnë shumë para, por a keni menduar ndonjëherë se si i fitojnë ato para? Le te diskutojme.

Shpikjet revolucionare nga Google që do tju bëjnë të lehtë jetën tuaj.

Shpikjet revolucionare nga Google që do tju bëjnë të lehtë jetën tuaj.

Dëshironi të shihni shpikjet revolucionare nga Google dhe se si këto shpikje ndryshuan jetën e çdo njeriu sot? Më pas lexoni në blog për të parë shpikjet nga Google.

E Premte Thelbësore: Çfarë ndodhi me Makinat e drejtuara nga AI?

E Premte Thelbësore: Çfarë ndodhi me Makinat e drejtuara nga AI?

Koncepti i makinave vetë-drejtuese për të dalë në rrugë me ndihmën e inteligjencës artificiale është një ëndërr që e kemi prej kohësh. Por, pavarësisht nga disa premtime, ato nuk shihen askund. Lexoni këtë blog për të mësuar më shumë…

Singulariteti teknologjik: Një e ardhme e largët e qytetërimit njerëzor?

Singulariteti teknologjik: Një e ardhme e largët e qytetërimit njerëzor?

Ndërsa Shkenca evoluon me një ritëm të shpejtë, duke marrë përsipër shumë nga përpjekjet tona, rriten edhe rreziqet për t'iu nënshtruar një Singulariteti të pashpjegueshëm. Lexoni, çfarë mund të thotë singulariteti për ne.

Evolucioni i ruajtjes së të dhënave - Infografik

Evolucioni i ruajtjes së të dhënave - Infografik

Metodat e ruajtjes së të dhënave kanë evoluar mund të jenë që nga lindja e të dhënave. Ky blog mbulon evolucionin e ruajtjes së të dhënave në bazë të një infografike.

Funksionalitetet e shtresave të arkitekturës së referencës së të dhënave të mëdha

Funksionalitetet e shtresave të arkitekturës së referencës së të dhënave të mëdha

Lexoni blogun për të njohur shtresat e ndryshme në arkitekturën e të dhënave të mëdha dhe funksionalitetet e tyre në mënyrën më të thjeshtë.

6 Përfitimet e mahnitshme të të pasurit pajisje shtëpiake inteligjente në jetën tonë

6 Përfitimet e mahnitshme të të pasurit pajisje shtëpiake inteligjente në jetën tonë

Në këtë botë të drejtuar nga dixhitali, pajisjet inteligjente të shtëpisë janë bërë një pjesë thelbësore e jetës. Këtu janë disa përfitime të mahnitshme të pajisjeve shtëpiake inteligjente se si ato e bëjnë jetën tonë të vlefshme dhe më të thjeshtë.

Përditësimi shtesë i macOS Catalina 10.15.4 po shkakton më shumë probleme sesa zgjidhja

Përditësimi shtesë i macOS Catalina 10.15.4 po shkakton më shumë probleme sesa zgjidhja

Së fundmi Apple lëshoi ​​macOS Catalina 10.15.4 një përditësim shtesë për të rregulluar problemet, por duket se përditësimi po shkakton më shumë probleme që çojnë në bricking të makinerive mac. Lexoni këtë artikull për të mësuar më shumë