A GitBucket telepítése Ubuntu 16.04-re

Ez az útmutató lefedi a GitBucket alapvető telepítését és beállítását egy Ubuntu 16.04-et futtató Vultr-példányhoz, és feltételezi, hogy Ön non-rootfelhasználóként hajtja végre a parancsokat .

Előfeltételek

  • Vultr szerverpéldány legalább 1 GB RAM-mal (a kisebb példányok működhetnek, bár lassan).
  • openjdk-8-jre Kötelező, a régebbi verziók nem működnek.
  • wget A GitBucket csomag letöltésére szolgál.
  • nginx Opcionális, fordított proxyt biztosít a GitBucket számára
  • systemd Kezeli a GitBucket folyamat elindítását és leállítását

Előfeltételek telepítése

A GitBucket Java 8-as vagy újabb verzióját igényli a szerverére. Ha még nem telepítette a Java 8-at, először frissítse a helyi csomaglistákat.

sudo apt update

Ezután telepítse a Java 8 futásidejű csomagot.

sudo apt install openjdk-8-jre

A GitBucket telepítése

Kiváltság nélküli felhasználó létrehozása

A GitBucket futtatásához létre kell hoznunk egy privilegizált felhasználót, mielőtt továbbmennénk. A GitBucket jogosulatlan felhasználó alatti futtatása korlátozza a telepítésünket abban, hogy a saját adatkönyvtárán kívülre írjon, erősítve ezzel a szerver biztonságát. Futtassa a következő parancsot egy nevű rendszerfelhasználó létrehozásához gitbucket.

sudo adduser --system gitbucket

Mivel rendszerfelhasználót hoztunk létre , az alapértelmezett shell a /bin/false, és visszakerülünk a jelenlegi shellünkhöz, hacsak nem adunk meg egy további shell argumentumot a futtatásakor su. Jelentkezzen be az újonnan létrehozott felhasználóhoz.

sudo su - gitbucket -s /bin/bash

A shell promptjának meg kell változnia, és Ön bejelentkezik az új rendszerfelhasználóba.

A GitBucket letöltése/frissítése

Keresse meg a GitBucket kiadások oldalát, és keresse meg a legújabb elérhető verziót. Másolja ki a gitbucket.warcsomag URL-jét , ellenőrizze, hogy az új felhasználó kezdőkönyvtárában van-e, és töltse le a segítségével wget.

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

Ezt a lépést minden alkalommal meg kell ismételnie, amikor frissíteni kívánja a GitBucket csomagot.

Kezdeti GitBucket konfiguráció

A csomag letöltése után manuálisan kell elindítanunk a GitBucket-et a kezdeti konfiguráció elvégzéséhez.

java -jar gitbucket.war --port 8080

Ha a portot 8080már lefoglalta egy másik folyamat, módosíthatja azt a portot, amelyet a GitBucket most hallgat. Ez az útmutató végig feltételezi, hogy a GitBucket a porton figyel8080 .

Ez elindítja a GitBucket-et a szerver nyilvános hálózati interfészén, és a megadott porton figyel. Néhány pillanat múlva látnia kell a következő üzenetet.

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

Ha a Vultr tűzfalát használja , meg kell nyitnia azt a portot, amelyen a GitBucket figyel, mivel a Vultr tűzfala fehérlistaként működik, és elutasítja a forgalmat, hogy engedélyezze a portokat, hacsak nincs másként megadva.

A GitBucket telepítésének most online kell lennie, és elérhetőnek kell lennie az internetről. Egy webböngésző segítségével csatlakozzon szervere nyilvános címéhez (ügyeljen arra, hogy megadja a portot, amelyen a GitBucket fut, (vagyis http://203.0.113.0:8080vagy http://example.com:8080), és a GitBucket kezdőlapjára kerül.

Az alapértelmezett rendszergazdai fiók jelszavát azonban meg kell változtatni. Ehhez jelentkezzen be a rendszergazdai fiókba Sign ina webes felület jobb felső sarkában található gombbal. A rendszergazdai fiók alapértelmezett bejelentkezési neve roota felhasználónév, majd rootismét a jelszó. A bejelentkezést követően a gomb helyére egy profilikon és legördülő menü kerül. Bontsa ki a legördülő listát, válassza a lehetőséget Account Settings, majd állítson be egy új, biztonságosabb jelszót a fiókbeállítások varázslójában.

Miután frissítette az alapértelmezett rendszergazdai fiók hitelesítő adatait, és meggyőződött arról, hogy a GitBucket elindul ebben a minimális konfigurációban, állítsa le a Java folyamatot a " CTRL+C" elemmel, és zárja be az aktuális shellt a következővel exit.

A Systemd szolgáltatás létrehozása

Jelenleg csak úgy tudjuk futtatni a GitBucketet, ha SSH-n keresztül érjük el a szerverünket, és kézzel indítjuk el a folyamatot egy shellből. Szerencsére az Ubuntu előre csomagolva érkezik Systemd, ami lehetővé teszi számunkra, hogy olyan szolgáltatást hozzunk létre, amellyel a GitBucket automatikusan elindul, és a rendszer karbantartja.

A segítségével nanohozzon létre egy új egységfájlt a /etc/systemd/systemkönyvtárban.

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

Ezután másolja be a következő tartalmat a fájlba.

[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

Ez az egységfájl határozza meg a GitBucket alapvető indítási és leállítási viselkedését, és a szolgáltatást a mi jogosulatlan rendszerfelhasználónk alatt futtatja a csak helyi hálózati interfészen.

Ha megváltoztatta a portszámot, amelyet a GitBucket figyel, módosítsa --porta ExecStartparancs argumentumát .

Mentse (" CTRL+O") az új egységfájlt, majd lépjen ki a szerkesztőből (" CTRL+X"). Az új egységfájl felderítéséhez újra kell töltenie a Systemd-et.

sudo systemctl daemon-reload

A Systemd újratöltése után ellenőrizze, hogy az új egységet megtalálták és betöltették-e.

sudo systemctl status gitbucket

A következő kimenetet kell látnia.

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

Végül engedélyezze az új egység automatikus elindulását, amikor a kiszolgáló elindul, majd indítsa el először a szolgáltatást.

sudo systemctl enable gitbucket
sudo systemctl start gitbucket

A szolgáltatás elindítása után újra hozzáférhet a GitBuckethez a böngészőből az IP-cím és a portszám használatával.

Az Nginx fordított proxy konfigurálása

Míg a GitBucket közvetlenül a porton keresztül is elérhetővé válik, a GitBucket az Nginxen keresztül történő közzétételével 8080javíthatja a teljesítményt és konfigurálhat olyan funkciókat, mint a HTTP/2, a TLS titkosítás és a gyorsítótárazási szabályok.

Az Nginx kezdeti beállítása

Ha még nem telepítette az Nginxet, frissítse a csomaglistákat.

sudo apt update

Ezután telepítse az Nginx csomagot.

sudo apt install nginx

Az Nginx telepítése után ellenőrizze, hogy a szerver IP-címén keresztül hozzáfér-e a webszerverhez a portszám nélkül (vagyis http://203.0.113.0vagy http://example.com). Ha sikeres, látni fogja az Ubuntu alapértelmezett Nginx céloldalát.

A fordított proxy létrehozása

A /etc/nginx/sites-availablefordított proxy kiindulópontjaként az alapértelmezett webhelykonfigurációt másoljuk be .

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

Nyissa meg az újonnan létrehozott konfigurációs fájlt a segítségével nano.

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

Keresse meg a meglévő location /blokkot a 43. sorban.

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

Jelenleg az Nginx megpróbálja visszaadni a /var/www/htmlbejövő HTTPkéréseknek megfelelő fájlokat . Ezt a viselkedést meg kell változtatnunk egy fordított proxy konfigurálásával ebben a blokkban, amely az Nginx-kiszolgálónknak küldött összes HTTP-kérést a GitBucket-példányra küldi. Frissítse a location /blokkot, hogy megfeleljen a következőknek.

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

Ha megváltoztatta a portszámot, amelyen a GitBucket figyelni fog, frissítse a proxy_passbeállítást, hogy tükrözze ezt.

Új konfigurációnk engedélyezéséhez le kell tiltania a meglévő alapértelmezett konfigurációt itt /etc/nginx/sites-enabled, majd szimbolizálnia kell az új konfigurációnkat /etc/nginx/sites-enableda következőkkel.

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

A konfigurációs fájl engedélyezése után ellenőrizze, hogy nincsenek-e szintaktikai hibák.

sudo nginx -t

Ezután indítsa újra az Nginx szervert az új webhelykonfiguráció engedélyezéséhez.

sudo systemctl restart nginx

Mostantól portszám nélkül is hozzáférhet a GitBucket telepítéséhez a szerver nyilvános címén .

A GitBucket folyamat biztonságossá tétele a nyilvános internetről

Jelenleg a GitBucket példányunk figyel szerverünk nyilvános hálózati felületén. Ez lehetővé teszi a felhasználók számára, hogy megkerüljék az Nginx proxyt azáltal, hogy csatlakoznak ahhoz a címhez, amelyre a GitBucket jelenleg figyel, ami valószínűleg nemkívánatos. Ennek megoldásához módosítanunk kell a korábban létrehozott egységfájlt. Nyissa meg az egységfájlt a gombbal nano.

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

Adja --host 127.0.0.1hozzá a ExecStartparancsot, így.

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

Ez azt eredményezi, hogy a GitBucket csak a szerverünk helyi hálózati interfészén lévő kapcsolatokat fogadja el. Még egyszer mentse (" CTRL+O") a fájlt, zárja be (" CTRL+X") a szerkesztőt, töltse be újra a Systemd-et, és indítsa újra a GitBucket egységet.

sudo systemctl daemon-reload
sudo systemctl restart gitbucket

Ha Vultr's Firewall-t használ, akkor el kell távolítania minden portszabályt is, amelyet a kezdeti beállítás során hozzáadott a GitBucket szerver eléréséhez.


Leave a Comment

Telepítse a Plesket a CentOS 7 rendszeren

Telepítse a Plesket a CentOS 7 rendszeren

Más rendszert használ? A Plesk egy szabadalmaztatott webtárhely-vezérlőpult, amely lehetővé teszi a felhasználók számára, hogy adminisztrálják személyes és/vagy ügyfeleik webhelyeit, adatbázisait

A Cacti beállítása a Debian Jessie-n

A Cacti beállítása a Debian Jessie-n

Bevezetés A Cacti egy nyílt forráskódú megfigyelő és grafikus eszköz, amely teljes mértékben az RRD adatokon alapul. A Cactuson keresztül szinte bármilyen típusú eszközt felügyelhet

Telepítse a Lets Encrypt SSL-t az egykattintásos WordPress alkalmazásban

Telepítse a Lets Encrypt SSL-t az egykattintásos WordPress alkalmazásban

Bevezetés A Lets Encrypt egy hitelesítésszolgáltató szolgáltatás, amely ingyenes TLS/SSL-tanúsítványokat kínál. A telepítés folyamatát a Certbot leegyszerűsíti,

Tekkit Classic kiszolgáló beállítása Ubuntu 16.10 rendszeren

Tekkit Classic kiszolgáló beállítása Ubuntu 16.10 rendszeren

Más rendszert használ? Mi az a Tekkit Classic? A Tekkit Classic egy modpack ahhoz a játékhoz, amelyet mindenki ismer és szeret; Minecraft. Tartalmaz néhányat a ver

Az iRedMail beállítása a Debian Wheezy rendszeren

Az iRedMail beállítása a Debian Wheezy rendszeren

Más rendszert használ? Ez az oktatóanyag megmutatja, hogyan telepítheti a csoportmunka iRedMail programot a Debian Wheezy friss telepítésére. Használnia kell egy szervát

Jekyll blog létrehozása Ubuntu 16.04-en

Jekyll blog létrehozása Ubuntu 16.04-en

Más rendszert használ? A Jekyll nagyszerű alternatíva a WordPress helyett blogíráshoz vagy tartalommegosztáshoz. Nem igényel adatbázist, és nagyon egyszerű i

Felügyelet nélküli frissítések beállítása Debian 9-en (Stretch)

Felügyelet nélküli frissítések beállítása Debian 9-en (Stretch)

Más rendszert használ? Ha Debian szervert vásárol, akkor mindig rendelkeznie kell a legújabb biztonsági javításokkal és frissítésekkel, akár alszik, akár nem

A PHP 7.0 vagy PHP 7.1 telepítése és konfigurálása Ubuntu 16.04 rendszeren

A PHP 7.0 vagy PHP 7.1 telepítése és konfigurálása Ubuntu 16.04 rendszeren

A PHP és a kapcsolódó csomagok a leggyakrabban használt összetevők a webszerverek telepítésekor. Ebben a cikkben megtudjuk, hogyan kell beállítani a PHP 7.0 vagy PHP 7.1 o verzióját

A Squid Proxy telepítése a CentOS rendszeren

A Squid Proxy telepítése a CentOS rendszeren

A Squid egy népszerű, ingyenes Linux-program, amely lehetővé teszi továbbítási webproxy létrehozását. Ebben az útmutatóban megtudhatja, hogyan telepítheti a Squid-et a CentOS rendszerre, hogy megfordítsa

A Lighttpd (LLMP Stack) telepítése a CentOS 6 rendszeren

A Lighttpd (LLMP Stack) telepítése a CentOS 6 rendszeren

Bevezetés A Lighttpd az Apache forkja, amely sokkal kevésbé erőforrás-igényes. Könnyű, innen kapta a nevét, és meglehetősen egyszerű a használata. Telepítés

Három ingyenes szervervezérlő panel (gyors telepítés)

Három ingyenes szervervezérlő panel (gyors telepítés)

1. Virtualmin/Webmin A Virtualmin egy hatékony és rugalmas web hosting vezérlőpanel Linux és UNIX rendszerek számára, amely a jól ismert nyílt forráskódú webbázison alapul.

Yii alkalmazás beállítása Ubuntu 14.04-en

Yii alkalmazás beállítása Ubuntu 14.04-en

A Yii egy PHP-keretrendszer, amely lehetővé teszi alkalmazások gyorsabb és egyszerűbb fejlesztését. A Yii telepítése Ubuntura egyszerű, amint azt pontosan megtudhatja

A képernyő használata Ubuntu 14.04-en

A képernyő használata Ubuntu 14.04-en

A Screen egy olyan alkalmazás, amely lehetővé teszi a terminálmunkamenetek többszöri használatát egy ablakon belül. Ez lehetővé teszi több terminálablak szimulálását, ahol ez ma

Állítsa be a saját DNS-kiszolgálóját a Debian/Ubuntu rendszeren

Állítsa be a saját DNS-kiszolgálóját a Debian/Ubuntu rendszeren

Ez az oktatóanyag elmagyarázza, hogyan állíthat be DNS-kiszolgálót a Bind9 használatával Debian vagy Ubuntu rendszeren. A cikkben ennek megfelelően helyettesítse be a saját-domain-neve.com címet. TH-nál

A Logrotate használata naplófájlok kezelésére

A Logrotate használata naplófájlok kezelésére

Bevezetés A Logrotate egy Linux segédprogram, amely leegyszerűsíti a naplófájlok kezelését. Általában naponta egyszer fut egy cron-feladaton keresztül, és kezeli a naplóbázist

A statikus hálózat és az IPv6 konfigurálása CentOS 7 rendszeren

A statikus hálózat és az IPv6 konfigurálása CentOS 7 rendszeren

A VULTR a közelmúltban változtatásokat hajtott végre a saját oldalukon, és most már mindennek jól kell működnie, ha a NetworkManager engedélyezve van. Ha szeretné letiltani

Az Icinga2 módosítása a mester/kliens modell használatához CentOS 6 vagy CentOS 7 rendszeren

Az Icinga2 módosítása a mester/kliens modell használatához CentOS 6 vagy CentOS 7 rendszeren

Az Icinga2 egy hatékony felügyeleti rendszer, és mester-kliens modellben használva helyettesítheti az NRPE-alapú felügyeleti ellenőrzések szükségességét. A mester-kliens

A Red5 Media Server beállítása az Ubuntu 16.04 rendszeren

A Red5 Media Server beállítása az Ubuntu 16.04 rendszeren

Más rendszert használ? A Red5 egy Java nyelven megvalósított nyílt forráskódú médiaszerver, amely lehetővé teszi többfelhasználós Flash-alkalmazások, például élő streamin futtatását.

Fordítsa le és telepítse az Nginx-et a PageSpeed ​​Modul segítségével a Debian 8 rendszeren

Fordítsa le és telepítse az Nginx-et a PageSpeed ​​Modul segítségével a Debian 8 rendszeren

Ebben a cikkben látni fogjuk, hogyan fordíthatja le és telepítheti az Nginx fővonalat az Nginx hivatalos forrásaiból a PageSpeed ​​modullal, amely lehetővé teszi a

Az Apache Cassandra 3.11.x telepítése Ubuntu 16.04 LTS rendszeren

Az Apache Cassandra 3.11.x telepítése Ubuntu 16.04 LTS rendszeren

Más rendszert használ? Az Apache Cassandra egy ingyenes és nyílt forráskódú NoSQL adatbázis-kezelő rendszer, amelyet úgy terveztek, hogy biztosítsa a méretezhetőséget,

Egyéni Windows ISO létrehozása frissítésekkel az NTLite használatával

Egyéni Windows ISO létrehozása frissítésekkel az NTLite használatával

Ez az oktatóanyag végigvezeti Önt a Vultrs rendszerekkel kompatibilis Windows ISO létrehozásának folyamatán. Itt megtanulhatja az <<strong>>Windows ISO<<strong>> előállításának lépéseit az NTLite segítségével.

A gépek felemelkedése: Az AI valós világbeli alkalmazásai

A gépek felemelkedése: Az AI valós világbeli alkalmazásai

A mesterséges intelligencia nem a jövőben, hanem itt a jelenben. Ebben a blogban Olvassa el, hogyan hatott a mesterséges intelligencia alkalmazások különböző ágazatokra.

DDOS támadások: Rövid áttekintés

DDOS támadások: Rövid áttekintés

Ön is DDOS támadások áldozata, és tanácstalan a megelőzési módszereket illetően? Olvassa el ezt a cikket a kérdések megoldásához.

Gondolkozott már azon, hogyan keresnek pénzt a hackerek?

Gondolkozott már azon, hogyan keresnek pénzt a hackerek?

Talán hallottál már arról, hogy a hackerek sok pénzt keresnek, de elgondolkodtál már azon, hogyan kereshetnek ennyi pénzt? beszéljük meg.

A Google forradalmi találmányai, amelyek megkönnyítik az életét.

A Google forradalmi találmányai, amelyek megkönnyítik az életét.

Szeretné látni a Google forradalmi találmányait, és azt, hogy ezek a találmányok hogyan változtatták meg minden mai ember életét? Ezután olvassa el a blogot, és nézze meg a Google találmányait.

Essential péntek: Mi történt az AI-vezérelt autókkal?

Essential péntek: Mi történt az AI-vezérelt autókkal?

Az önvezető autók koncepciója, hogy mesterséges intelligencia segítségével kerüljenek az utakra, már egy ideje álmunk. De számos ígéret ellenére sehol sem látszanak. Olvassa el ezt a blogot, hogy többet megtudjon…

Technológiai szingularitás: az emberi civilizáció távoli jövője?

Technológiai szingularitás: az emberi civilizáció távoli jövője?

Ahogy a tudomány gyors ütemben fejlődik, átveszi erőfeszítéseink nagy részét, megnő annak a kockázata is, hogy alávetjük magunkat egy megmagyarázhatatlan szingularitásnak. Olvassa el, mit jelenthet számunkra a szingularitás.

Az adattárolás fejlődése – Infografika

Az adattárolás fejlődése – Infografika

Az adatok tárolási módjai az Adatok születése óta alakulhatnak. Ez a blog egy infografika alapján mutatja be az adattárolás fejlődését.

A Big Data Reference Architecture Layerek funkciói

A Big Data Reference Architecture Layerek funkciói

Olvassa el a blogot, hogy a legegyszerűbb módon ismerje meg a Big Data Architecture különböző rétegeit és azok funkcióit.

Az okosotthoni eszközök 6 lenyűgöző előnye az életünkben

Az okosotthoni eszközök 6 lenyűgöző előnye az életünkben

Ebben a digitálisan vezérelt világban az intelligens otthoni eszközök az élet döntő részévé váltak. Íme az intelligens otthoni eszközök néhány elképesztő előnye, hogyan teszik életünket érdemessé és egyszerűbbé.