GitLab è un gestore di repository GIT open source basato su Rails e sviluppato da GitLab Inc. È un gestore di repository GIT basato sul Web che consente al tuo team di lavorare sul codice, eseguire richieste di funzionalità, tenere traccia dei bug e testare e implementare applicazioni. GitLab fornisce funzionalità come un wiki, monitoraggio dei problemi, revisioni del codice, feed di attività e gestione delle unioni. È in grado di ospitare più progetti.
GitLab è disponibile in quattro edizioni:
- Gitlab CE (Community Edition):self-hosted, gratuito e con supporto dal forum della community.
- Gitlab EE (Enterprise Edition):app a pagamento self-hosted, dotata di funzionalità aggiuntive.
- GitLab.com - SaaS, gratuito.
- GitLab.io - Istanza GitLab privata gestita da GitLab Inc.
In questo tutorial, ti mostrerò passo dopo passo come installare GitLab CE (Community Edition) sul tuo server Ubuntu 18.04 LTS (Bionic Beaver). Userò il pacchetto 'omnibus' fornito da GitLab per una facile installazione.
Prerequisiti
- Server Ubuntu 18.04
- Memoria RAM minima 4 GB:per prestazioni migliori, utilizza 8 GB
- Privilegi di root
Cosa faremo
- Aggiorna repository e pacchetti di aggiornamento
- Installa dipendenze
- Installa GitLab Community Edition
- Genera certificato SSL Letsencrypt e DHPARAM
- Configura HTTPS per GitLab
- Configura Firewall UFW di Ubuntu
- Post-installazione di GitLab
- Test
Passaggio 1:aggiornamento del repository e pacchetti di aggiornamento
Prima di installare qualsiasi pacchetto sul sistema, aggiorna tutti i repository disponibili e quindi aggiorna tutti i pacchetti sul sistema.
Esegui i comandi apt di seguito.
sudo apt update
sudo apt upgrade -y
Attendi i pacchetti di installazione che verranno aggiornati.
Passaggio 2:installazione delle dipendenze Gitlab
GitLab ha bisogno di alcune dipendenze dei pacchetti per l'installazione, inclusi curl, postfix e ca-certificates.
Installa le dipendenze dei pacchetti GitLab usando il comando apt di seguito.
sudo apt install curl openssh-server ca-certificates postfix -y
Durante l'installazione di Postfix, ti verrà chiesto di configurare, seleziona 'Sito Internet'.
Quindi inserisci il nome di dominio del server che verrà utilizzato per inviare un'e-mail.
E siamo pronti per installare GitLab sul server.
Passaggio 3:installa GitLab
In questo passaggio, installeremo GitLab utilizzando i pacchetti omnibus. Omnibus installerà tutti i pacchetti, i servizi e gli strumenti necessari per eseguire GitLab sul server.
Aggiungi il repository GitLab con il comando curl.
curl -sS https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.deb.sh | sudo bash
E poi installa GitLab CE Community Edition con il comando apt.
sudo apt install gitlab-ce -y
Il comando scaricherà e installerà il pacchetto GitLab CE e, al termine dell'installazione, vedrai i risultati come di seguito.
Successivamente, dovremmo configurare l'URL che verrà utilizzato per accedere al nostro server GitLab. Utilizzeremo un dominio chiamato 'git.hakase-labs.pw' per l'URL di accesso a GitLab e abiliteremo HTTPS su di esso.
Per modificare l'accesso all'URL di GitLab, modifica il file '/etc/gitlab/gitlab.rb'.
sudo vim /etc/gitlab/gitlab.rb
Ora cambia il valore "url_esterno" con il tuo nome di dominio.
external_url 'http://git.hakase-labs.pw'
Salva ed esci.
Fase 4:genera Let's encrypt SSL Certificate e DHPARAM Certificate
In questo passaggio, genereremo un nuovo certificato Letsencrypt e un certificato DHPARAM per il nome di dominio GitLab 'git.hakase-labs.pw'.
Installa lo strumento Lets Encrypt usando il comando apt di seguito.
sudo apt install letsencrypt -y
E al termine dell'installazione, esegui il comandoletsencrypt di seguito.
sudo letsencrypt certonly --standalone --agree-tos --no-eff-email --agree-tos --email [email protected] -d git.hakase-labs.pw
E quando è completo, otterrai il risultato come mostrato di seguito.
Sono stati generati certificati SSL Letsencrypt, che si trovano nella directory '/etc/letsencyrpt/'.
Successivamente, genereremo il certificato DHPARAM utilizzando il comando OpenSSL.
Crea una nuova directory '/etc/gitlab/ssl' ed esegui il comando OpenSSL di seguito.
sudo mkdir -p /etc/gitlab/ssl/
sudo openssl dhparam -out /etc/gitlab/ssl/dhparams.pem 2048
Ora cambia l'autorizzazione della directory SSL.
chmod 600 /etc/gitlab/ssl/*
E tutti i certificati necessari per la configurazione HTTPS di GitLab sono stati generati.
Passaggio 5 - Configura HTTPS per GitLab
Per abilitare HTTPS per l'installazione di GitLab, dobbiamo modificare il file 'gitlab.rb'.
Modifica il file '/etc/gitlab/gitlab.rb' utilizzando il comando vim di seguito.
sudo vim /etc/gitlab/gitlab.rb
Cambia "url_esterno" di Gitlab in "https://git.hakase-labs.pw".
external_url 'https://git.hakase-labs.pw'
Ora incolla la configurazione di seguito nella sezione '#GitLab Nginx'.
nginx['redirect_http_to_https'] = true nginx['ssl_certificate'] = "/etc/letsencrypt/live/git.hakase-labs.pw/fullchain.pem" nginx['ssl_certificate_key'] = "/etc/letsencrypt/live/git.hakase-labs.pw/privkey.pem" nginx['ssl_dhparam'] = "/etc/gitlab/ssl/dhparams.pem"
Salva ed esci.
Ora esegui il comando 'gitlab-ctl' di seguito.
sudo gitlab-ctl reconfigure
Questo comando installerà e configurerà GitLab in base al file di configurazione '/etc/gitlab/gitlab.rb'.
E quando è completo, vedrai il risultato come di seguito.
L'installazione di GitLab è completa e HTTPS per GitLab è stato abilitato.
Passaggio 6:configurazione del firewall UFW di Ubuntu
In questo passaggio, abiliteremo il firewall UFW di Ubuntu. È già installato sul sistema, dobbiamo solo avviare il servizio. Eseguiremo GitLab dietro il firewall UFW di Ubuntu, quindi dobbiamo aprire le porte HTTP e HTTPS.
Aggiungi i servizi ssh, http e https alla configurazione.
sudo ufw allow ssh
sudo ufw allow http
sudo ufw allow https
E abilita il firewall UFW di Ubuntu con il comando seguente.
sudo ufw enable
Digita 'y' per sì per abilitarlo.
Ora controlla tutti i servizi e l'elenco delle porte nell'elenco.
sudo ufw status
E otterrai i servizi ssh, http e https nell'elenco.
Passaggio 7 - Post-installazione di GitLab
Apri il browser web e digita l'URL di gitlab 'git.hakase-labs.pw' e verrai reindirizzato alla connessione HTTPS.
Crea una nuova password di root GitLab
Digita la tua nuova password per l'utente root GitLab e fai clic sul pulsante "Cambia la tua password".
Ora accedi come utente "root" con la tua password e fai clic sul pulsante "Accedi".
Ora otterrai la dashboard di GitLab.
Cambia profilo
Fai clic sul pulsante del profilo e scegli "Impostazioni".
Nella sezione "Impostazioni principali", digita il nome del profilo "hakase", quindi fai clic sull'opzione "Aggiorna impostazioni profilo".
Cambia nome utente
Fai clic sulla scheda "Account" e digita il nome utente "hakase".
Ora premi il pulsante "Aggiorna nome utente".
Aggiungi chiave SSH
Genera una nuova chiave usando il comando ssh-keygen come di seguito.
ssh-keygen
cat ~/.ssh/id_rsa.pub
Copia la chiave 'id_rsa.pub'.
Ora torna alla dashboard utente di GitLab e fai clic sul menu "Chiave SSH" a sinistra.
Incolla la chiave pubblica ssh 'id_rsa.pub' e fai clic sul pulsante 'Aggiungi chiave'.
Restrizioni per la registrazione
Fai clic sul pulsante "Area di amministrazione" al centro, quindi fai clic su "Impostazioni".
Deseleziona l'opzione "registrazione abilitata" e fai clic sul pulsante "Salva modifiche".
Limite account
Fai clic sulla sezione "Account e limite" e imposta il limite predefinito del progetto su 20.
E fai clic sul pulsante "Salva modifiche".
Passaggio 8:test di Gitlab
Infine, faremo alcuni test per assicurarci che il nostro sistema GitLab funzioni correttamente.
Crea nuovo progetto
Fare clic sull'icona più in alto al centro per creare un nuovo repository di progetto. Digita il nome del tuo progetto, la descrizione e configura le impostazioni di visibilità del tuo progetto. Quindi fare clic sul pulsante "Crea progetto".
Il nuovo progetto è stato creato.
Verifica prima commit e push
Ora inizieremo ad aggiungere nuovi contenuti al repository. Assicurati che Git sia installato sul tuo computer e dobbiamo impostare il nome utente globale e l'e-mail per git con il comando seguente.
git config --global user.name "hakase"
git config --global user.email "[email protected]"
Clona il repository e aggiungi un file README.md.
git clone https://git.hakase-labs.pw/hakase/project01.git
cd project01/
vim README.md
Ti verrà richiesta la password utente 'hakase'. Digita la stessa password che hai utilizzato quando abbiamo effettuato l'accesso a GitLab la prima volta.
Invia un nuovo file al repository 'project01'.
git add .
git commit -m 'Add README.md file by hakase-labs'
Quindi, invia la modifica al repository sul server GitLab.
git push origin master
Digita la tua password e premi Invio per continuare. Vedrai il risultato come di seguito.
Ora apri il progetto 'project01' dal tuo browser web e vedrai che il nuovo file README.md è stato aggiunto al repository.
La guida all'installazione di GitLab su Ubuntu 18.04 è stata completata con successo.