Hvernig á að setja upp GitBucket á Ubuntu 16.04

Þessi handbók fjallar um grunnuppsetningu og uppsetningu GitBucket fyrir Vultr tilvik sem keyrir Ubuntu 16.04 og gerir ráð fyrir að þú sért að framkvæma skipanir sem non-rootnotandi.

Forkröfur

  • Vultr netþjónstilvik með að minnsta kosti 1GB af vinnsluminni (minni tilvik geta virkað, þó hægt sé).
  • openjdk-8-jre Áskilið, eldri útgáfur virka ekki.
  • wget Notað til að hlaða niður GitBucket pakkanum.
  • nginx Valfrjálst, veitir öfugt umboð til GitBucket
  • systemd Stjórnar því að hefja og stöðva GitBucket ferlið

Uppsetningarforsendur

GitBucket krefst þess að Java 8 eða nýrri sé uppsett á netþjóninum þínum. Ef þú hefur ekki þegar sett upp Java 8 skaltu fyrst uppfæra staðbundna pakkalistann þinn.

sudo apt update

Settu síðan upp Java 8 runtime pakkann.

sudo apt install openjdk-8-jre

Að setja upp GitBucket

Að búa til réttindalausan notanda

Við þurfum að búa til óforréttinda notanda til að keyra GitBucket áður en lengra er haldið. Að keyra GitBucket undir forréttindalausum notanda takmarkar uppsetningu okkar frá því að skrifa utan eigin gagnaskrár, sem styrkir öryggi netþjónsins þíns. Keyrðu eftirfarandi skipun til að búa til kerfisnotanda sem heitir gitbucket.

sudo adduser --system gitbucket

Þar sem við bjuggum til kerfi notandi, sjálfgefið skel er /bin/false, og við munum vera sparkað aftur til núverandi skel okkar nema við bjóðum frekari skel rök þegar í gangi su. Skráðu þig inn á nýstofnaðan notanda.

sudo su - gitbucket -s /bin/bash

Hvetjandi skelin þín ætti að breytast og þú verður skráður inn á nýja kerfisnotandann.

Niðurhal/uppfærsla GitBucket

Farðu á GitBucket útgáfusíðuna og finndu nýjustu tiltæku útgáfuna. Afritaðu slóðina fyrir gitbucket.warpakkann, staðfestu að þú sért í heimaskrá nýja notandans og halaðu því niður með wget.

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

Þú þarft að endurtaka þetta skref í hvert skipti sem þú vilt uppfæra GitBucket pakkann.

Upphafleg GitBucket stilling

Þegar pakkanum hefur verið hlaðið niður þurfum við að ræsa GitBucket handvirkt til að framkvæma frumstillingar.

java -jar gitbucket.war --port 8080

Ef höfnin 8080er þegar tekin af öðru ferli geturðu breytt höfninni sem GitBucket mun hlusta á núna. Þessi handbók gerir ráð fyrir að GitBucket sé að hlusta á port8080 .

Þetta mun ræsa GitBucket á almenna netviðmóti netþjónsins þíns og hlusta á tilgreinda höfn. Þú ættir að sjá, eftir nokkra stund, eftirfarandi skilaboð.

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

Ef þú ert að nota eldvegg Vultr þarftu að opna tengið sem GitBucket hlustar á, þar sem eldveggur Vultr virkar sem hvítlisti, hafnar umferð til að leyfa höfn nema annað sé tekið fram.

GitBucket uppsetningin þín ætti nú að vera á netinu og aðgengileg af internetinu. Notaðu vafra, tengdu við netfang netþjónsins þíns (vertu viss um að tilgreina tengið sem GitBucket keyrir á, (þ.e. http://203.0.113.0:8080eða http://example.com:8080), og þú munt lenda á heimasíðu GitBucket.

Hins vegar þarf að breyta lykilorðinu á sjálfgefna stjórnandareikningnum. Til að gera það, skráðu þig inn á stjórnandareikninginn í gegnum Sign inhnappinn efst til hægri á vefviðmótinu. Sjálfgefin innskráning fyrir stjórnandareikninginn er rootfyrir notandanafnið og svo rootaftur fyrir lykilorðið. Þegar þú hefur skráð þig inn verður hnappinum skipt út fyrir prófíltákn og fellivalmynd. Stækkaðu fellilistann og veldu Account Settingsog stilltu síðan nýtt, öruggara lykilorð í reikningsstillingarhjálpinni.

Eftir að þú hefur uppfært skilríki sjálfgefna stjórnandareikningsins og staðfest að GitBucket byrjar í þessari lágmarksstillingu skaltu drepa Java ferlið með " CTRL+C" og loka núverandi skel með exit.

Að búa til Systemd þjónustuna

Eins og er getum við aðeins keyrt GitBucket með því að fá aðgang að netþjóninum okkar í gegnum SSH og hefja ferlið handvirkt úr skel. Sem betur fer kemur Ubuntu forpakkað með Systemd, sem gerir okkur kleift að búa til þjónustu þar sem GitBucket verður sjálfvirkt ræst og viðhaldið af kerfinu.

Notaðu nano, búðu til nýja einingaskrá í /etc/systemd/systemmöppunni.

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

Afritaðu síðan eftirfarandi innihald í skrána.

[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

Þessi einingaskrá skilgreinir grunnuppsetningar- og lokunarhegðun fyrir GitBucket og keyrir þjónustuna undir óforréttindum kerfisnotanda okkar á staðbundnu netviðmótinu.

Ef þú hefur breytt gáttarnúmerinu sem GitBucket mun hlusta á skaltu breyta --portröksemdinni fyrir ExecStartskipunina.

Vistaðu (" CTRL+O") nýju einingaskrána og farðu síðan úr ritlinum (" CTRL+X"). Þú verður að endurhlaða Systemd til að nýja einingaskráin verði uppgötvað.

sudo systemctl daemon-reload

Eftir að Systemd hefur endurhlaðað skaltu ganga úr skugga um að nýja einingin hafi fundist og hlaðin.

sudo systemctl status gitbucket

Þú ættir að sjá eftirfarandi úttak.

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

Að lokum skaltu gera nýju einingunni kleift að ræsast sjálfkrafa þegar þjónninn þinn ræsir og ræstu síðan þjónustuna í fyrsta skipti.

sudo systemctl enable gitbucket
sudo systemctl start gitbucket

Þegar þjónustan er hafin muntu geta fengið aðgang að GitBucket úr vafranum þínum með því að nota IP töluna og gáttarnúmerið aftur.

Stillir Nginx öfugt umboð

Þó að hægt sé að afhjúpa GitBucket beint í gegnum höfn 8080geturðu bætt afköst og stillt eiginleika eins og HTTP/2, TLS dulkóðun og skyndiminnisreglur með því að afhjúpa GitBucket í gegnum Nginx.

Upphafleg Nginx uppsetning

Ef þú hefur ekki þegar sett upp Nginx skaltu uppfæra pakkalistana þína.

sudo apt update

Settu síðan upp Nginx pakkann.

sudo apt install nginx

Þegar Nginx hefur verið sett upp skaltu ganga úr skugga um að þú hafir aðgang að vefþjóninum í gegnum IP tölu netþjónsins þíns án gáttarnúmersins (þ.e. http://203.0.113.0eða http://example.com). Ef vel tekst til muntu sjá sjálfgefna Nginx áfangasíðu fyrir Ubuntu.

Að búa til gagnstæða umboð

Við munum afrita sjálfgefna stillingu vefsvæðisins /etc/nginx/sites-availablesem upphafspunkt fyrir andstæða proxy.

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

Opnaðu nýstofnaða stillingarskrána með nano.

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

Finndu núverandi location /blokk á línu 43.

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

Eins og er mun Nginx reyna að skila skrám sem eru staðsettar /var/www/htmlsem passa við komandi HTTPbeiðnir. Við þurfum að breyta þessari hegðun með því að stilla öfugt umboð í þessum blokk, sem mun senda allar HTTP beiðnir sem gerðar eru á Nginx netþjóninn okkar til GitBucket tilviksins í staðinn. Uppfærðu location /blokkina til að passa við eftirfarandi.

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;
}

Ef þú breyttir gáttarnúmerinu sem GitBucket mun hlusta á skaltu uppfæra proxy_passvalkostinn til að endurspegla þetta.

Til að virkja nýju stillingarnar okkar þarftu að slökkva á núverandi sjálfgefna stillingu í /etc/nginx/sites-enabled, og tengja síðan nýju stillingarnar okkar í /etc/nginx/sites-enabledgegnum eftirfarandi.

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

Þegar stillingarskráin hefur verið virkjuð skaltu athuga hvort setningafræðivillur séu til staðar.

sudo nginx -t

Endurræstu síðan Nginx netþjóninn til að virkja nýja síðuuppsetningu okkar.

sudo systemctl restart nginx

Þú ættir nú að geta fengið aðgang að GitBucket uppsetningunni þinni á almennu heimilisfangi netþjónsins þíns án gáttarnúmers.

Að tryggja GitBucket ferlið frá almenna internetinu

Eins og er er GitBucket tilvikið okkar að hlusta á almenna netviðmóti netþjónsins okkar . Þetta gerir notendum kleift að komast framhjá Nginx umboðinu með því að tengjast heimilisfanginu sem GitBucket er að hlusta á, sem er líklega óæskilegt. Við þurfum að breyta einingaskránni sem við bjuggum til áðan til að leysa þetta. Opnaðu einingaskrána með nano.

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

Bættu --host 127.0.0.1við ExecStartskipunina, eins og svo.

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

Þetta mun valda því að GitBucket samþykkir aðeins tengingar á staðarnetsviðmóti netþjónsins okkar. Enn og aftur skaltu vista (" CTRL+O") skrána, loka (" CTRL+X") ritlinum, endurhlaða Systemd og endurræsa GitBucket eininguna okkar.

sudo systemctl daemon-reload
sudo systemctl restart gitbucket

Ef þú ert að nota Vultr's Firewall, ættir þú einnig að fjarlægja allar hafnarreglur sem þú bættir við til að fá aðgang að GitBucket þjóninum við upphaflega uppsetningu.

Skildu eftir athugasemd

The Rise of Machines: Real World Applications of AI

The Rise of Machines: Real World Applications of AI

Gervigreind er ekki í framtíðinni, hún er hér í nútímanum Í þessu bloggi Lestu hvernig gervigreindarforrit hafa haft áhrif á ýmsa geira.

DDOS árásir: Stutt yfirlit

DDOS árásir: Stutt yfirlit

Ertu líka fórnarlamb DDOS árása og ruglaður með forvarnaraðferðirnar? Lestu þessa grein til að leysa spurningar þínar.

Hefur þú einhvern tíma velt því fyrir þér hvernig tölvuþrjótar græða peninga?

Hefur þú einhvern tíma velt því fyrir þér hvernig tölvuþrjótar græða peninga?

Þú gætir hafa heyrt að tölvuþrjótar græða mikið af peningum, en hefur þú einhvern tíma velt því fyrir þér hvernig þeir vinna sér inn svona peninga? við skulum ræða.

Byltingarkenndar uppfinningar frá Google sem munu auðvelda lífi þínu.

Byltingarkenndar uppfinningar frá Google sem munu auðvelda lífi þínu.

Viltu sjá byltingarkenndar uppfinningar frá Google og hvernig þessar uppfinningar breyttu lífi hvers manns í dag? Lestu síðan til að blogga til að sjá uppfinningar frá Google.

Föstudagur Nauðsynlegur: Hvað varð um gervigreindardrifna bíla?

Föstudagur Nauðsynlegur: Hvað varð um gervigreindardrifna bíla?

Hugmyndin um að sjálfkeyrandi bílar fari á göturnar með hjálp gervigreindar er draumur sem við höfum átt um tíma núna. En þrátt fyrir nokkur loforð eru þau hvergi sjáanleg. Lestu þetta blogg til að læra meira…

Tæknileg sérkenni: Fjarlæg framtíð mannlegrar siðmenningar?

Tæknileg sérkenni: Fjarlæg framtíð mannlegrar siðmenningar?

Þar sem vísindin þróast hratt og taka yfir mikið af viðleitni okkar, eykst hættan á því að verða fyrir óútskýranlegri einstæðu. Lestu, hvað sérkenni gæti þýtt fyrir okkur.

Virkni Big Data Reference Architecture Layers

Virkni Big Data Reference Architecture Layers

Lestu bloggið til að þekkja mismunandi lög í Big Data Architecture og virkni þeirra á einfaldasta hátt.

Þróun gagnageymslu – Infographic

Þróun gagnageymslu – Infographic

Geymsluaðferðir gagna hafa verið að þróast gæti verið frá fæðingu gagna. Þetta blogg fjallar um þróun gagnageymslu á grundvelli upplýsingamynda.

6 ótrúlegir kostir þess að hafa snjall heimilistæki í lífi okkar

6 ótrúlegir kostir þess að hafa snjall heimilistæki í lífi okkar

Í þessum stafræna heimi hafa snjallheimilistæki orðið afgerandi hluti af lífi. Hér eru nokkrir ótrúlegir kostir snjallheimatækja um hvernig þau gera líf okkar þess virði að lifa því og einfaldara.

macOS Catalina 10.15.4 viðbót uppfærsla veldur fleiri vandamálum en að leysa

macOS Catalina 10.15.4 viðbót uppfærsla veldur fleiri vandamálum en að leysa

Nýlega gaf Apple út macOS Catalina 10.15.4 viðbótaruppfærslu til að laga vandamál en svo virðist sem uppfærslan sé að valda fleiri vandamálum sem leiða til múrsteins á Mac vélum. Lestu þessa grein til að læra meira