GNU/Linux >> Linux Esercitazione >  >> Cent OS

Come installare e configurare GitLab CE su CentOS 7

GitLab è un gestore di repository open source basato su Rails sviluppato da GitLab Inc. È un gestore di repository git basato sul Web che consente al tuo team di collaborare alla codifica, al test e alla distribuzione di applicazioni. GitLab offre diverse funzionalità, tra cui wiki, monitoraggio dei problemi, revisioni del codice e feed di attività.

GitLab Inc offre 4 prodotti:

  1. Gitlab CE (Community Edition) - self-hosted e gratuito; supporto dal forum della community.
  2. Gitlab EE (Enterprise Edition) - self-hosted e a pagamento; viene fornito con funzionalità aggiuntive.
  3. GitLab.com - SaaS e gratuito.
  4. GitLab.io - Istanza GitLab privata gestita da GitLab Inc.

In questo tutorial, discuteremo passo dopo passo l'installazione di GitLab CE (Community Edition) su CentOS 7 Server con 4 GB di RAM. In uno dei nostri tutorial precedenti, abbiamo eseguito l'installazione di GitLab manualmente. Ma qui useremo il pacchetto 'omnibus' fornito da GitLab per la nostra installazione.

Cosa faremo

  1. Installa pacchetti
  2. Installa GitLab
  3. Configura l'URL di GitLab
  4. Genera SSL Let's crittografare e certificato DHPARAM
  5. Abilita Nginx HTTPS per GitLab
  6. Configura firewalld
  7. Esegui l'installazione di GitLab
  8. Test

Prerequisiti

  • Server CentOS 7 - 64 bit
  • RAM minima 2 GB
  • Privilegi di root

Passaggio 1:installazione dei pacchetti

In questo passaggio, scaricheremo/installeremo alcuni pacchetti necessari per l'installazione di GitLab. Useremo curl per scaricare il programma di installazione del repository, policycoreutils per SELinux manager, OpenSSH e postfix come server SMTP locale.

Installa tutti quei pacchetti con il seguente comando yum.

yum -y install curl policycoreutils openssh-server openssh-clients postfix

Successivamente, avvia i servizi ssh e postfix.

systemctl start sshd
systemctl start postfix

Ora abilita l'esecuzione automatica all'avvio.

systemctl enable sshd
systemctl enable postfix

Tutti i pacchetti richiesti per l'installazione di GitLab sono ora installati sul server.

Passaggio 2:installa GitLab

GitLab fornisce un programma di installazione per aggiungere il repository GitLab CE. Scarica il programma di installazione con curl ed esegui lo script (come mostrato di seguito) per aggiungere un nuovo repository GitLab CE.

curl -sS https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.rpm.sh | sudo bash

Il repository GitLab CE è stato aggiunto al sistema.

Ora installa GitLab con il seguente comando yum.

yum -y install gitlab-ce

Al termine dell'installazione, otterrai il risultato mostrato di seguito.

Con questo, GitLab CE è ora installato sul server CentOS 7.

Passaggio 3:configura l'URL di GitLab

Per questo tutorial, useremo un nome di dominio per GitLab. In particolare, utilizzeremo il nome di dominio 'gitlab.hakase-labs.co.'

Vai alla directory di configurazione di GitLab '/etc/gitlab' e quindi modifica il file di configurazione 'gitlab.rb' con l'editor vim.

cd /etc/gitlab/
vim gitlab.rb

Modifica la riga external_url con il nome di dominio 'gitlab.hakase-labs.co '.

external_url 'http://gitlab.hakase-labs.co'

Salva le modifiche ed esci da vim.

Fase 4 - Genera SSL Let's encrypt e certificato DHPARAM

Per il livello di sicurezza di base, utilizzeremo SSL per il nostro sito GitLab. Utilizzeremo il certificato SSL gratuito di Letsencrypt e genereremo il certificato DHPARAM per aggiungere un ulteriore livello di sicurezza.

Per generare il certificato Letsencrypt, è necessario installare lo strumento a riga di comando Letsencrypt, disponibile nel repository.

Installa lo strumento Letsencrypt su CentOS 7 con il comando yum di seguito.

yum -y install letsencrypt

Al termine dell'installazione, genera un nuovo certificato SSL letencrypt con il comando seguente.

letsencrypt certonly --standalone -d gitlab.hakase-labs.co

Nota: Durante la generazione di SSL Letsencrypt, assicurati che le tue porte HTTP e HTTPS non siano bloccate dal firewall.

Digita il tuo indirizzo email per la notifica di rinnovo, quindi digita "A" per i Termini di servizio di Letsencrypt, infine digita "N" e premi di nuovo Invio.

E se vedi il risultato come mostrato di seguito, significa che il tuo certificato per il nome di dominio è stato generato e archiviato nella directory '/etc/letsencrypt/live'.

Quindi, crea una nuova directory 'ssl' nella directory di configurazione di GitLab '/etc/gitlab/'.

mkdir -p /etc/gitlab/ssl/

Ora genera il file pem del certificato DHPARAM usando OpenSSL. Il bit più grande è più sicuro.

sudo openssl dhparam -out /etc/gitlab/ssl/dhparams.pem 2048

E dopo che il certificato DHPARAM è stato generato, cambia l'autorizzazione del file del certificato su 600.

chmod 600 /etc/gitlab/ssl/*

Quindi è stato generato il certificato SSL Letsencrypt e DHPARAM per l'installazione di GitLab.

Passaggio 5:abilita Nginx HTTPS per GitLab

In questa fase, abbiamo già i file di certificato SSL gratuiti da Letsencrypt e il certificato DHPARAM che viene generato utilizzando il comando OpenSSL. E in questo passaggio, abiliteremo HTTPS per il sito GitLab. Abiliteremo HTTPS e forzeremo HTTP alla connessione HTTPS.

Per prima cosa, vai alla directory di configurazione di GitLab e modifica il file di configurazione 'gitlab.rb'.

cd /etc/gitlab/
vim gitlab.rb

E cambia HTTP in HTTPS sulla riga external_url.

external_url 'https://gitlab.hakase-labs.co'

Quindi incolla la seguente configurazione nella configurazione della riga 'external_url'.

nginx['redirect_http_to_https'] = true
nginx['ssl_certificate'] = "/etc/letsencrypt/live/gitlab.hakase-labs.co/fullchain.pem"
nginx['ssl_certificate_key'] = "/etc/letsencrypt/live/gitlab.hakase-labs.co/privkey.pem"
nginx['ssl_dhparam'] = "/etc/gitlab/ssl/dhparams.pem"

Salva le modifiche ed esci da vim.

Infine, applica la configurazione di GitLab usando il comando seguente.

gitlab-ctl reconfigure

E quando tutto è completo, dovresti ottenere il risultato come mostrato di seguito.

Passaggio 6 - Configura Firewalld

In questo tutorial, eseguiremo GitLab sotto il firewall Firewalld. Quindi assicurati che sia installato sul sistema. Se non hai il pacchetto, puoi installarlo usando il seguente comando.

yum -y install firewalld

Avvia firewalld e abilitalo all'esecuzione automatica all'avvio con i comandi systemctl come mostrato di seguito.

systemctl start firewalld
systemctl enable firewalld

Quindi, apri nuove porte per i nostri servizi. Apriremo le porte SSH, HTTP e HTTPS per la nostra configurazione GitLab. Esegui i comandi firewall-cmd di seguito per aprire le porte.

firewall-cmd --permanent --add-service ssh
firewall-cmd --permanent --add-service http
firewall-cmd --permanent --add-service https

Ora ricarica il firewall e controlla la configurazione del firewalld. Assicurati che SSH, HTTP e HTTPS siano nell'elenco.

firewall-cmd --reload
firewall-cmd --list-all

Quindi, con questo, la configurazione di Firewalld per GitLab è stata completata.

Passaggio 7:esegui l'installazione

Quindi GitLab è stato installato nel sistema e funziona sotto il firewall Firewalld. In questo passaggio, eseguiremo alcune impostazioni rapide dopo aver installato GitLab sul server.

Reimposta la password di root di GitLab

Apri il tuo browser web e digita l'URL di gitlab 'gitlab.hakase-labs.co'. Verrai reindirizzato alla connessione HTTPS. Modifica la password di root con la tua password e fai clic sul pulsante "Cambia la tua password" per confermare.

Ora puoi accedere alla dashboard di GitLab con l'utente predefinito "root" e la tua password.

Cambia profilo e nome utente

Dopo aver effettuato l'accesso alla dashboard di GitLab, fai clic su in alto a destra del tuo profilo icona e fai clic sull'icona "Impostazioni" per configurare il tuo profilo.

Nella scheda "Profilo", cambia nome e indirizzo email, quindi fai clic sul pulsante "Aggiorna impostazioni profilo" in basso per confermare.

Quindi, vai alla scheda "Account" e cambia il nome utente root predefinito con il tuo nome utente, quindi fai clic sul pulsante "Aggiorna nome utente".

Aggiungi chiave SSH

Assicurati di avere già una chiave, se non hai una chiave SSH puoi generarne una usando il comando qui sotto.

ssh-keygen

E otterrai due chiavi nella directory ~/.ssh/. 'id_rsa' sarebbe la tua chiave privata e 'id_rsa.pub' sarebbe la tua chiave pubblica.

Quindi, torna al browser Web e fai clic sulla scheda "Chiave SSH". Copia il contenuto del file "id_rsa.pub" e incollalo nella casella della chiave, quindi fai clic su "Aggiungi chiave".

Con questo, la chiave SSH è stata aggiornata.

Registrazione restrizioni e impostazioni dei limiti

Fai clic sull'icona "Area amministrativa", quindi fai clic sull'icona a forma di ingranaggio e scegli "Impostazioni".

Nella sezione "Impostazioni account e limiti", puoi configurare il progetto massimo per utente. E nella sezione "Restrizioni alla registrazione", puoi aggiungere il nome di dominio della tua email alla casella della white list.

Al termine, scorri fino in fondo e fai clic su "Salva".

Questo è tutto. La configurazione di base di GitLab è stata completata.

Fase 8 - Test

Ora faremo dei test con il nostro GitLab self-hosted.

Crea nuovo progetto

Fai clic sull'icona più in alto a destra per creare un nuovo repository di progetti.

Digita il nome del progetto, la descrizione e le impostazioni di visibilità dell'impostazione per il tuo progetto. Quindi fai clic sul pulsante "Crea progetto".

Con questo, il progetto è stato creato.

Verifica prima il commit

Dopo aver creato il tuo progetto (howtoforge nel nostro caso), verrai reindirizzato alla pagina del progetto. Ora inizia ad aggiungere nuovi contenuti al repository.

Assicurati che Git sia installato sul tuo computer.

Per questo test, abbiamo bisogno di configurare l'account Git sul computer, cosa che puoi fare usando i seguenti comandi:

git config --global user.name "hakase"
git config --global user.email "[email protected]"

Clona il repository e aggiungi un nuovo file README.md.

git clone https://[email protected]/hakase/howtoforge.git
cd howtoforge/
vim README.md

Ti verrà richiesta la password di hakase. Digita la stessa password che abbiamo utilizzato durante il primo accesso a GitLab, quindi aggiungi nuovo contenuto al file README.md.

Conferma le nuove modifiche al repository utilizzando i seguenti comandi.

git add .
git commit -m 'Add README.md file by hakase-labs'

Quindi, invia il repository al server GitLab.

git push origin master

Digita la tua password e premi Invio per continuare. Dovresti vedere il risultato come mostrato di seguito.

Ora apri il progetto (howtoforge nel nostro caso) dal tuo browser web e vedrai che un nuovo file README.md è stato aggiunto al repository.

Quindi questo conferma che Gitlab è stato installato correttamente su Ubuntu CentOS 7 con 4 GB di memoria.


Cent OS
  1. Come installare e configurare Nginx su CentOS 7

  2. Come installare e configurare Redis su CentOS 7

  3. Come installare e configurare GitLab su CentOS 7

  4. Come installare e configurare Gitlab su CentOS 8

  5. Come installare e configurare CyberPanel su CentOS 8

Come installare e configurare ownCloud su CentOS 7

Come installare Gitlab su CentOS 8

Come installare e configurare Samba su CentOS 8

Come installare e configurare Fail2ban su CentOS 8

Come installare e configurare HAproxy su CentOS 6

Come installare e configurare GlusterFS su CentOS 7/CentOS 8