Kā instalēt GitBucket Ubuntu 16.04

Šajā rokasgrāmatā ir aprakstīta GitBucket pamata instalēšana un iestatīšana Vultr instancei, kurā darbojas Ubuntu 16.04, un tiek pieņemts, ka izpildāt komandas kā non-rootlietotājs.

Priekšnoteikumi

  • Vultr servera gadījums ar vismaz 1 GB RAM (mazāki gadījumi var darboties, lai gan lēni).
  • openjdk-8-jre Obligāti, vecākas versijas nedarbosies.
  • wget Izmanto, lai lejupielādētu GitBucket pakotni.
  • nginx Pēc izvēles nodrošina GitBucket apgriezto starpniekserveri
  • systemd Pārvalda GitBucket procesa sākšanu un apturēšanu

Priekšnoteikumu uzstādīšana

GitBucket serverī ir jāinstalē Java 8 vai jaunāka versija. Ja vēl neesat instalējis Java 8, vispirms atjauniniet vietējos pakotņu sarakstus.

sudo apt update

Pēc tam instalējiet Java 8 izpildlaika pakotni.

sudo apt install openjdk-8-jre

GitBucket instalēšana

Nepriviliģēta lietotāja izveide

Pirms turpināt darbu, mums būs jāizveido nepievilcīgs lietotājs, lai palaistu GitBucket. GitBucket palaišana nepievilināta lietotāja vadībā ierobežo mūsu instalācijas ierakstīšanu ārpus sava datu direktorija, tādējādi stiprinot jūsu servera drošību. Palaidiet šo komandu, lai izveidotu sistēmas lietotāju ar nosaukumu gitbucket.

sudo adduser --system gitbucket

Tā kā mēs izveidojām sistēmas lietotāju, noklusējuma čaula ir /bin/false, un mēs tiksim novirzīti atpakaļ uz pašreizējo čaulu, ja vien, palaižot , nenorādīsim papildu čaulas argumentu su. Piesakieties jaunizveidotajam lietotājam.

sudo su - gitbucket -s /bin/bash

Jūsu čaulas uzvednei vajadzētu mainīties, un jūs tiksit pieteicies jaunajā sistēmas lietotāja kontā.

GitBucket lejupielāde/atjaunināšana

Dodieties uz GitBucket laidienu lapu un atrodiet jaunāko pieejamo versiju. Nokopējiet gitbucket.warpakotnes URL , pārbaudiet, vai atrodaties jaunā lietotāja mājas direktorijā, un lejupielādējiet to, izmantojot wget.

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

Šī darbība būs jāatkārto katru reizi, kad vēlaties atjaunināt GitBucket pakotni.

Sākotnējā GitBucket konfigurācija

Kad pakotne ir lejupielādēta, mums būs manuāli jāstartē GitBucket, lai veiktu sākotnējo konfigurāciju.

java -jar gitbucket.war --port 8080

Ja portu 8080jau izmanto cits process, varat mainīt portu, kuru GitBucket klausīsies tagad. Šajā rokasgrāmatā tiek pieņemts, ka GitBucket klausās portā8080 .

Tas sāks GitBucket jūsu servera publiskā tīkla saskarnē, klausoties norādītajā portā. Pēc dažiem mirkļiem jums vajadzētu redzēt šādu ziņojumu.

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

Ja izmantojat Vultr ugunsmūri , jums būs jāatver ports, kuru GitBucket klausās, jo Vultr ugunsmūris darbojas kā baltais saraksts, noraidot trafiku, lai atļautu portus, ja vien nav norādīts citādi.

Jūsu GitBucket instalācijai tagad vajadzētu būt tiešsaistē un pieejamai no interneta. Izmantojot tīmekļa pārlūkprogrammu, izveidojiet savienojumu ar sava servera publisko adresi (noteikti norādiet portu, kurā darbojas GitBucket, (ti, http://203.0.113.0:8080vai http://example.com:8080), un jūs nonāksit GitBucket mājaslapā.

Tomēr ir jāmaina noklusējuma administratora konta parole. Lai to izdarītu, piesakieties administratora kontā, izmantojot Sign inpogu tīmekļa saskarnes augšējā labajā stūrī. Noklusējuma pieteikšanās administratora kontam ir rootlietotājvārdam un pēc tam rootatkal parolei. Pēc pieteikšanās poga tiks aizstāta ar profila ikonu un nolaižamo izvēlni. Izvērsiet nolaižamo izvēlni un atlasiet Account Settings, pēc tam konta iestatījumu vednī iestatiet jaunu, drošāku paroli.

Kad esat atjauninājis noklusējuma administratora konta akreditācijas datus un pārliecinājies, ka GitBucket tiek startēts šajā minimālajā konfigurācijā, iznīciniet Java procesu ar " CTRL+C" un aizveriet pašreizējo apvalku ar exit.

Systemd pakalpojuma izveide

Pašlaik mēs varam palaist GitBucket, tikai piekļūstot savam serverim, izmantojot SSH, un manuāli sākot procesu no čaulas. Par laimi, Ubuntu ir Systemdiesaiņots ar , ļaujot mums izveidot pakalpojumu, ar kuru sistēma GitBucket tiks automātiski startēta un uzturēta.

Izmantojot nano, /etc/systemd/systemdirektorijā izveidojiet jaunu vienības failu .

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

Pēc tam kopējiet tālāk norādīto saturu failā.

[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

Šis vienības fails definē GitBucket pamata palaišanas un izslēgšanas darbības, un tas palaiž pakalpojumu mūsu nepieredzētajam sistēmas lietotājam tikai vietējā tīkla saskarnē.

Ja esat mainījis porta numuru, kuru GitBucket klausīsies, mainiet komandas --portargumentu ExecStart.

Saglabājiet (" CTRL+O") jauno vienības failu un pēc tam izejiet no redaktora (" CTRL+X"). Jums būs atkārtoti jāielādē Systemd, lai tiktu atklāts jaunais vienības fails.

sudo systemctl daemon-reload

Kad Systemd ir atkārtoti ielādēts, pārbaudiet, vai jaunā vienība ir atklāta un ielādēta.

sudo systemctl status gitbucket

Jums vajadzētu redzēt šādu izvadi.

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

Visbeidzot, iespējojiet jaunās vienības automātisku startēšanu, kad serveris sāk startēt, un pēc tam palaidiet pakalpojumu pirmo reizi.

sudo systemctl enable gitbucket
sudo systemctl start gitbucket

Kad pakalpojums būs palaists, jūs atkal varēsit piekļūt GitBucket no savas pārlūkprogrammas, izmantojot IP adresi un porta numuru.

Nginx reversā starpniekservera konfigurēšana

Lai gan GitBucket var atklāt tieši caur portu 8080, varat uzlabot veiktspēju un konfigurēt tādas funkcijas kā HTTP/2, TLS šifrēšana un kešatmiņas kārtulas, atklājot GitBucket, izmantojot Nginx.

Sākotnējā Nginx iestatīšana

Ja vēl neesat instalējis Nginx, atjauniniet pakotņu sarakstus.

sudo apt update

Pēc tam instalējiet Nginx pakotni.

sudo apt install nginx

Kad Nginx ir instalēts, pārbaudiet, vai varat piekļūt tīmekļa serverim, izmantojot sava servera IP adresi bez porta numura (ti, http://203.0.113.0vai http://example.com). Ja tas izdosies, jūs redzēsit Ubuntu noklusējuma Nginx galveno lapu.

Reversā starpniekservera izveide

Mēs kopēsim noklusējuma vietnes konfigurāciju /etc/nginx/sites-availablekā sākumpunktu apgrieztajam starpniekserveram.

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

Atveriet jaunizveidoto konfigurācijas failu ar nano.

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

Atrodiet esošo location /bloku 43. rindā.

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

Pašlaik Nginx mēģinās atgriezt failus, /var/www/htmlkas atbilst ienākošajiem HTTPpieprasījumiem. Mums būs jāmaina šī darbība, šajā blokā konfigurējot apgriezto starpniekserveri, kas tā vietā nosūtīs visus HTTP pieprasījumus, kas nosūtīti uz mūsu Nginx serveri, uz GitBucket instanci. Atjauniniet location /bloku, lai tas atbilstu tālāk norādītajam.

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

Ja mainījāt porta numuru, kurā GitBucket klausīsies, atjauniniet proxy_passopciju, lai to atspoguļotu.

Lai iespējotu mūsu jauno konfigurāciju, jums būs jāatspējo esošā noklusējuma konfigurācija un /etc/nginx/sites-enabledpēc tam jāsaista mūsu jaunā konfigurācija /etc/nginx/sites-enabledar tālāk norādīto.

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

Kad konfigurācijas fails ir iespējots, pārbaudiet, vai nav sintakses kļūdu.

sudo nginx -t

Pēc tam restartējiet Nginx serveri, lai iespējotu mūsu jauno vietnes konfigurāciju.

sudo systemctl restart nginx

Tagad jums vajadzētu būt iespējai piekļūt savai GitBucket instalācijai sava servera publiskajā adresē bez porta numura.

GitBucket procesa nodrošināšana no publiskā interneta

Pašlaik mūsu GitBucket instance klausās mūsu servera publiskā tīkla saskarnē. Tas ļaus lietotājiem apiet Nginx starpniekserveri, izveidojot savienojumu ar adresi, kuru pašlaik klausās GitBucket, kas, iespējams, ir nevēlama. Lai to atrisinātu, mums būs jāmaina vienības fails, ko izveidojām iepriekš. Atveriet vienības failu ar nano.

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

Append --host 127.0.0.1ar ExecStartkomandu, piemēram, tā.

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

Tādējādi GitBucket pieņems savienojumus tikai mūsu servera lokālā tīkla saskarnē. Vēlreiz saglabājiet (" CTRL+O") failu, aizveriet (" CTRL+X") redaktoru, atkārtoti ielādējiet Systemd un restartējiet mūsu GitBucket vienību.

sudo systemctl daemon-reload
sudo systemctl restart gitbucket

Ja izmantojat Vultr ugunsmūri, jums vajadzētu arī noņemt visus porta noteikumus, ko pievienojāt, lai piekļūtu GitBucket serverim sākotnējās iestatīšanas laikā.


Instalējiet Plesk operētājsistēmā CentOS 7

Instalējiet Plesk operētājsistēmā CentOS 7

Vai izmantojat citu sistēmu? Plesk ir patentēts tīmekļa mitinātāja vadības panelis, kas ļauj lietotājiem administrēt savas personīgās un/vai klientu vietnes, datu bāzes

Iestatiet Cacti vietnē Debian Jessie

Iestatiet Cacti vietnē Debian Jessie

Ievads Cacti ir atvērtā koda uzraudzības un grafiku veidošanas rīks, kas pilnībā ir balstīts uz RRD datiem. Izmantojot Cacti, varat pārraudzīt gandrīz jebkura veida ierīces

Instalējiet Lets Encrypt SSL WordPress lietotnē ar vienu klikšķi

Instalējiet Lets Encrypt SSL WordPress lietotnē ar vienu klikšķi

Ievads Lets Encrypt ir sertifikācijas iestādes pakalpojums, kas piedāvā bezmaksas TLS/SSL sertifikātus. Instalēšanas procesu vienkāršo Certbot,

Kā iestatīt Tekkit Classic serveri Ubuntu 16.10

Kā iestatīt Tekkit Classic serveri Ubuntu 16.10

Vai izmantojat citu sistēmu? Kas ir Tekkit Classic? Tekkit Classic ir modifikācija spēlei, kuru visi zina un mīl; Minecraft. Tajā ir daži no ver

Iestatiet iRedMail vietnē Debian Wheezy

Iestatiet iRedMail vietnē Debian Wheezy

Vai izmantojat citu sistēmu? Šī apmācība parādīs, kā instalēt grupas programmu iRedMail jaunā Debian Wheezy instalācijā. Jums vajadzētu izmantot servi

Jekyll emuāra izveide Ubuntu 16.04

Jekyll emuāra izveide Ubuntu 16.04

Vai izmantojat citu sistēmu? Jekyll ir lieliska alternatīva WordPress emuāru rakstīšanai vai satura kopīgošanai. Tam nav nepieciešamas nekādas datu bāzes, un tas ir ļoti vienkārši

Kā iestatīt neuzraudzītus jauninājumus Debian 9 (Stretch)

Kā iestatīt neuzraudzītus jauninājumus Debian 9 (Stretch)

Vai izmantojat citu sistēmu? Ja iegādājaties Debian serveri, jums vienmēr ir jābūt jaunākajiem drošības ielāpiem un atjauninājumiem neatkarīgi no tā, vai jūs guļat vai ne.

Kā instalēt un konfigurēt PHP 7.0 vai PHP 7.1 Ubuntu 16.04

Kā instalēt un konfigurēt PHP 7.0 vai PHP 7.1 Ubuntu 16.04

PHP un saistītās pakotnes ir visbiežāk izmantotie komponenti, izvietojot tīmekļa serveri. Šajā rakstā mēs uzzināsim, kā iestatīt PHP 7.0 vai PHP 7.1 o

Kā instalēt Squid starpniekserveri CentOS

Kā instalēt Squid starpniekserveri CentOS

Squid ir populāra bezmaksas Linux programma, kas ļauj izveidot pāradresācijas tīmekļa starpniekserveri. Šajā rokasgrāmatā jūs redzēsit, kā instalēt Squid uz CentOS, lai jūs pārvērstu

Kā instalēt Lighttpd (LLMP Stack) operētājsistēmā CentOS 6

Kā instalēt Lighttpd (LLMP Stack) operētājsistēmā CentOS 6

Ievads Lighttpd ir Apache dakša, kuras mērķis ir daudz mazāk resursietilpīgs. Tas ir viegls, tāpēc arī tā nosaukums ir diezgan vienkārši lietojams. Instalēšana

Trīs bezmaksas servera vadības paneļi (ātrā instalēšana)

Trīs bezmaksas servera vadības paneļi (ātrā instalēšana)

1. Virtualmin/Webmin Virtualmin ir jaudīgs un elastīgs tīmekļa mitināšanas vadības panelis Linux un UNIX sistēmām, pamatojoties uz labi zināmo atvērtā pirmkoda tīmekļa bāzi

Yii lietojumprogrammas iestatīšana Ubuntu 14.04

Yii lietojumprogrammas iestatīšana Ubuntu 14.04

Yii ir PHP ietvars, kas ļauj ātrāk un vienkāršāk izstrādāt lietojumprogrammas. Yii instalēšana Ubuntu ir vienkārša, jo jūs to uzzināsit precīzi

Ekrāna izmantošana Ubuntu 14.04

Ekrāna izmantošana Ubuntu 14.04

Ekrāns ir lietojumprogramma, kas ļauj vairākkārt izmantot termināļa sesijas vienā logā. Tas ļauj simulēt vairākus termināļa logus, kur tas ma

Iestatiet savu DNS serveri vietnē Debian/Ubuntu

Iestatiet savu DNS serveri vietnē Debian/Ubuntu

Šajā apmācībā ir paskaidrots, kā iestatīt DNS serveri, izmantojot Bind9 uz Debian vai Ubuntu. Visā rakstā attiecīgi aizstājiet savu-domēna-nosaukums.com. plkst

Logrotate izmantošana žurnālfailu pārvaldībai

Logrotate izmantošana žurnālfailu pārvaldībai

Ievads Logrotate ir Linux utilīta, kas vienkāršo žurnālfailu administrēšanu. Tas parasti darbojas reizi dienā, izmantojot cron uzdevumu, un pārvalda žurnālu bāzi

Icinga2 modificēšana, lai izmantotu galveno/klienta modeli operētājsistēmā CentOS 6 vai CentOS 7

Icinga2 modificēšana, lai izmantotu galveno/klienta modeli operētājsistēmā CentOS 6 vai CentOS 7

Icinga2 ir spēcīga uzraudzības sistēma, un, ja to izmanto galvenā klienta modelī, tā var aizstāt vajadzību pēc NRPE balstītām uzraudzības pārbaudēm. Meistars-klients

Iestatiet Red5 Media Server operētājsistēmā Ubuntu 16.04

Iestatiet Red5 Media Server operētājsistēmā Ubuntu 16.04

Vai izmantojat citu sistēmu? Red5 ir atvērtā pirmkoda multivides serveris, kas ieviests Java un ļauj palaist Flash vairāku lietotāju lietojumprogrammas, piemēram, tiešraides straumēšanu.

Kompilējiet un instalējiet Nginx ar PageSpeed ​​moduli operētājsistēmā Debian 8

Kompilējiet un instalējiet Nginx ar PageSpeed ​​moduli operētājsistēmā Debian 8

Šajā rakstā mēs redzēsim, kā apkopot un instalēt Nginx galveno līniju no oficiālajiem Nginx avotiem ar PageSpeed ​​moduli, kas ļauj t

Kā instalēt Apache Cassandra 3.11.x operētājsistēmā Ubuntu 16.04 LTS

Kā instalēt Apache Cassandra 3.11.x operētājsistēmā Ubuntu 16.04 LTS

Vai izmantojat citu sistēmu? Apache Cassandra ir bezmaksas un atvērtā koda NoSQL datu bāzes pārvaldības sistēma, kas ir izstrādāta, lai nodrošinātu mērogojamību, hig.

Kā instalēt Apache Cassandra 3.11.x operētājsistēmā CentOS 7

Kā instalēt Apache Cassandra 3.11.x operētājsistēmā CentOS 7

Vai izmantojat citu sistēmu? Apache Cassandra ir bezmaksas un atvērtā koda NoSQL datu bāzes pārvaldības sistēma, kas ir izstrādāta, lai nodrošinātu mērogojamību, hig.

Mašīnu pieaugums: AI reālās pasaules lietojumi

Mašīnu pieaugums: AI reālās pasaules lietojumi

Mākslīgais intelekts nav nākotnē, tas ir šeit, tagadnē. Šajā emuārā lasiet, kā mākslīgā intelekta lietojumprogrammas ir ietekmējušas dažādas nozares.

DDOS uzbrukumi: īss pārskats

DDOS uzbrukumi: īss pārskats

Vai arī jūs esat DDOS uzbrukumu upuris un esat neizpratnē par profilakses metodēm? Izlasiet šo rakstu, lai atrisinātu savus jautājumus.

Vai esat kādreiz domājis, kā hakeri pelna naudu?

Vai esat kādreiz domājis, kā hakeri pelna naudu?

Iespējams, esat dzirdējuši, ka hakeri pelna daudz naudas, bet vai esat kādreiz domājuši, kā viņi nopelna šādu naudu? pārrunāsim.

Google revolucionāri izgudrojumi, kas atvieglos jūsu dzīvi.

Google revolucionāri izgudrojumi, kas atvieglos jūsu dzīvi.

Vai vēlaties redzēt revolucionārus Google izgudrojumus un to, kā šie izgudrojumi mainīja katra cilvēka dzīvi mūsdienās? Pēc tam lasiet emuārā, lai redzētu Google izgudrojumus.

Piektdiena: kas notika ar AI vadītām automašīnām?

Piektdiena: kas notika ar AI vadītām automašīnām?

Pašpiedziņas automobiļu koncepcija izbraukt uz ceļiem ar mākslīgā intelekta palīdzību ir mūsu sapnis jau kādu laiku. Bet, neskatoties uz vairākiem solījumiem, tie nekur nav redzami. Lasiet šo emuāru, lai uzzinātu vairāk…

Tehnoloģiskā singularitāte: cilvēces civilizācijas tāla nākotne?

Tehnoloģiskā singularitāte: cilvēces civilizācijas tāla nākotne?

Zinātnei strauji attīstoties, pārņemot lielu daļu mūsu pūļu, palielinās arī risks pakļaut sevi neizskaidrojamai singularitātei. Izlasiet, ko singularitāte varētu nozīmēt mums.

Datu glabāšanas evolūcija – infografika

Datu glabāšanas evolūcija – infografika

Datu uzglabāšanas metodes ir attīstījušās kopš datu dzimšanas. Šajā emuārā ir aprakstīta datu uzglabāšanas attīstība, pamatojoties uz infografiku.

Lielo datu atsauces arhitektūras slāņu funkcijas

Lielo datu atsauces arhitektūras slāņu funkcijas

Lasiet emuāru, lai vienkāršākā veidā uzzinātu dažādus lielo datu arhitektūras slāņus un to funkcijas.

6 brīnišķīgas priekšrocības, ko sniedz viedo mājas ierīču izmantošana mūsu dzīvē

6 brīnišķīgas priekšrocības, ko sniedz viedo mājas ierīču izmantošana mūsu dzīvē

Šajā digitālajā pasaulē viedās mājas ierīces ir kļuvušas par būtisku dzīves sastāvdaļu. Šeit ir daži pārsteidzoši viedo mājas ierīču ieguvumi, lai padarītu mūsu dzīvi dzīves vērtu un vienkāršāku.

MacOS Catalina 10.15.4 papildinājuma atjauninājums rada vairāk problēmu nekā to risināšana

MacOS Catalina 10.15.4 papildinājuma atjauninājums rada vairāk problēmu nekā to risināšana

Nesen Apple izlaida macOS Catalina 10.15.4 papildinājuma atjauninājumu, lai novērstu problēmas, taču šķiet, ka atjauninājums rada vairāk problēmu, kas izraisa Mac datoru bloķēšanu. Izlasiet šo rakstu, lai uzzinātu vairāk