GitBucket è un sistema di sviluppo collaborativo self-hosted que assomiglia a servizi come GitHub o GitLab, inoltre ha un'interfaccia abbastanza simile a queste. GitBucket è posizionato come framework di sviluppo per i sistemi che funzionano con i repository Git. Il sistema si distingue per la sua facile installazione, la capacità di espandere le funzionalità tramite plug-in e il supporto per l'API GitHub.
GitBucket viene fornito con una serie di funzioni di ambito che include, supporto GitLFS, problemi, richiesta pull, notifiche, sistema di plugin, repository Git pubblici e privati, oltre a quello può anche essere facilmente integrato con LDAP per la gestione di account e gruppi. Il codice GitBucket è scritto in Scala e concesso in licenza con Apache 2.0.
Delle caratteristiche principali GitBucket evidenzia quanto segue:
- Supporto per repository Git pubblici e privati con accesso tramite HTTP e SSH
- Supporto GitLFS
- Interfaccia per la navigazione nel repository con supporto per la modifica dei file online;
- La presenza di un Wiki per la preparazione della documentazione
- Interfaccia per l'elaborazione dei messaggi di errore
- Strumenti per l'elaborazione delle richieste di modifica
- Sistema di notifica e-mail
- Un semplice sistema di gestione di utenti e gruppi con supporto per l'integrazione LDAP
- Un sistema di plugin con una raccolta di plugin sviluppati dai membri della comunità.
Sotto forma di plugin, vengono implementate funzionalità come la creazione di note generali, la pubblicazione di annunci, il backup, la visualizzazione di notifiche desktop, la stampa di commit, il disegno di AsciiDoc.
Come installare GitBucket su server Ubuntu, desktop Ubuntu o derivati?
Come accennato all'inizio, GitBucket è un sistema di sviluppo collaborativo che è self-hosted, quindi l'installazione di questo è rivolta ai server, sebbene sia anche possibile può realizzare installazione nelle versioni desktop Ubuntu o qualche suo derivato.
Devi solo tenere conto che nelle istruzioni invece di posizionare un dominio devi usare l'IP locale nella tua rete domestica, devi considerare anche l'installazione aggiuntiva dei pacchetti necessari per lanciare un servizio web (PHP, Apache, qualche database compatibile (MySQL o PostgreSQL) Posso consigliarti di installare Xampp per Linux o il famoso Lamp.
Installare da GitBucket, prima dobbiamo avere il pacchetto java installato sul sistema, quindi se non lo hai, esegui il seguente comando:
sudo apt-get install default-jdk -y
Ora creeremo un nuovo gruppo e un utente per poter eseguire 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
Fatto questo, ora scaricheremo la versione stabile più attuale che è la versione 4.33 del seguente link o dal terminale con wget:
wget https://github.com/gitbucket/gitbucket/releases/download/4.33.0/gitbucket.war
Una volta completato il download, dovremo assegnare uno spazio a GitBucket. Per questo digiteremo il seguente comando:
mkdir /opt/gitbucket
Adesso basta dobbiamo spostare il file scaricato nella directory appena creata:
mv gitbucket.war /opt/gitbucket
Ora dobbiamo dare i permessi all'utente che creiamo in modo che tu possa lavorare sulla directory creata:
chown -R gitbucket:gitbucket /opt/gitbucket
Già con esso, creeremo un servizio nel sistema per questo scriveremo:
sudo nano /etc/systemd/system/gitbucket.service
Nel file inseriremo quanto segue:
# 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
Salviamo con Ctrl + O ed usciamo con Ctrl + X e ricarichiamo tutti i servizi con:
sudo systemctl daemon-reload
E abilitiamo quello che creiamo con:
sudo systemctl start gitbucket sudo systemctl enable gitbucket
Già con il servizio abilitato e avviato, dobbiamo connettere il database:
sudo nano /opt/gitbucket/database.conf db { url = "jdbc:h2:${DatabaseHome};MVCC=true" user = "sa" password = "sa" }
E fatto con esso È ora possibile accedere al servizio dal tuo dominio inserendo lo spazio allocato http://tuodominio.com:8080 o in un'installazione locale con localhost: 8080
- Utente: root
- Parola d'ordine: radice
Infine si consiglia di implementare un proxy inverso, ma il processo è diverso in Nginx, Apache o Candy. Puoi controllare la documentazione a riguardo nel seguente link.