GitBucket je samostalni sistem zajedničkog razvoja quPodseća na usluge poput GitHub ili GitLab, osim toga što ima sučelje prilično slično ovima. GitBucket pozicionira se kao razvojni okvir za sisteme koji rade sa Git spremištima. Sistem se ističe lakom instalacijom, sposobnošću proširenja funkcionalnosti putem dodataka i podrškom za GitHub API.
GitBucket dolazi s nizom značajki opsega što uključuje GitLFS podršku, probleme, zahtjev za povlačenjem, obavijesti, sistem dodataka, javna i privatna Git spremišta, plus može se lako integrirati sa LDAP-om za upravljanje računima i grupama. GitBucket kod napisan je u Scali i licenciran pod Apache 2.0.
Od glavnih karakteristika GitBucket ističe sljedeće:
- Podrška za javne i privatne Git spremišta s pristupom putem HTTP-a i SSH-a
- Podrška za GitLFS
- Sučelje za navigaciju spremištem s podrškom za mrežno uređivanje datoteka;
- Prisustvo Wiki-a za pripremu dokumentacije
- Sučelje za obradu poruka o greškama
- Alati za obradu zahtjeva za promjenu
- Sistem obavještavanja putem e-pošte
- Jednostavan sistem upravljanja korisnicima i grupama s podrškom za LDAP integraciju
- Sistem dodataka sa kolekcijom dodataka koji su razvili članovi zajednice.
U obliku dodataka, implementirane su funkcije kao što su stvaranje općih bilješki, objavljivanje najava, izrada sigurnosnih kopija, prikaz obavještenja na radnoj površini, crtanje obaveza, crtanje AsciiDoc.
Kako instalirati GitBucket na Ubuntu server, Ubuntu radnu površinu ili derivate?
Kao što je spomenuto na početku, GitBucket je suradnički razvojni sistem koji je sam domaćin, pa je tako instalacija je usmjerena na servere, iako je to također moguće mogu shvatiti instalacija u desktop verzijama Ubuntu ili neki njegov derivat.
Morate samo uzeti u obzir da u uputama, umjesto postavljanja domene, morate koristiti lokalnu IP adresu u svojoj kućnoj mreži, morate uzeti u obzir i dodatnu instalaciju paketa neophodnih za pokretanje web usluge (PHP, Apache, neka kompatibilna baza podataka (MySQL ili PostgreSQL) Mogu vam preporučiti da instalirate Xampp za Linux ili poznatu Lampu.
Da instalirate iz GitBucket-a, prvo moramo imati instaliran java paket na sistemu, pa ako ga nemate, samo pokrenite sljedeću naredbu:
sudo apt-get install default-jdk -y
Sada stvorit ćemo novu grupu i korisnika koji će moći pokretati GitBucket
sudo groupadd -g 555 gitbucketsudo useradd -g gitbucket --no-user-group --home-dir /opt/gitbucket --no-create-home --shell /usr/sbin/nologin --system --uid 555 gitbucket
Gotovo, sada ćemo preuzeti stabilnu verziju najnovija verzija 4.33 iz sledeći link ili sa terminala s wgetom:
wget https://github.com/gitbucket/gitbucket/releases/download/4.33.0/gitbucket.war
Nakon završetka preuzimanja, morat ćemo dodijeliti prostor GitBucketu. Za ovo ćemo otkucati sljedeću naredbu:
mkdir /opt/gitbucket
Sad samo preuzetu datoteku moramo premjestiti u novostvoreni direktorij:
mv gitbucket.war /opt/gitbucket
Sada moramo dati dozvole korisniku koju kreiramo tako da možete raditi na kreiranom direktoriju:
chown -R gitbucket:gitbucket /opt/gitbucket
Već s tim, stvorit ćemo uslugu u sistemu za ovo ćemo otkucati:
sudo nano /etc/systemd/system/gitbucket.service
U datoteku ćemo smjestiti sljedeće:
# GitBucket Service [Unit] Description=Manage Java service [Service] WorkingDirectory=/opt/gitbucket ExecStart=/usr/bin/java -Xms128m -Xmx256m -jar gitbucket.war User=gitbucket Group=gitbucket Type=simple Restart=on-failure RestartSec=10 [Install] WantedBy=multi-user.target
Štedimo pomoću Ctrl + O i izlazimo sa Ctrl + X i ponovo ćemo učitati sve usluge sa:
sudo systemctl daemon-reload
A mi omogućavamo onu koju kreiramo pomoću:
sudo systemctl start gitbucket sudo systemctl enable gitbucket
Već s omogućenom i pokrenutom uslugom, moramo povezati bazu podataka:
sudo nano /opt/gitbucket/database.conf db { url = "jdbc:h2:${DatabaseHome};MVCC=true" user = "sa" password = "sa" }
I gotovo s tim Usluzi sada možete pristupiti s vaše domene ulazak u prostor dodijeljen http://yourdomain.com:8080 ili u lokalnu instalaciju s localhost: 8080
- Korisnik: root
- Lozinka: root
Konačno, preporučuje se primjena obrnutog proxyja, ali postupak se razlikuje u Nginxu, Apacheu ili Candyju. Možete provjeriti dokumentaciju o tome na sljedećem linku.