Gitea è una soluzione gratuita, open source e self-hosted per i server Git. Gitea ha scritto nel linguaggio di programmazione Go, un'applicazione leggera, disponibile come pacchetto binario che può essere installato sulla maggior parte delle piattaforme tra cui Windows, Linux e macOS. È una delle alternative a GitLab robuste, scalabili, veloci, facili da usare e alternative a GitLab.
Gitea offre molte funzionalità tra cui un editor di file del repository, rilevamento di bug e tempo, branching del repository, blocco dei file, built-in in wiki, fusione, supporto per database multipli, processo di aggiornamento semplice, registro dei contenitori integrato e molto altro.
In questo tutorial, ti mostrerò come installare Gitea da binario con PostgreSQL su Debian 11 .
Prerequisiti
- Un server che esegue Debian 11.
- Sul server è configurata una password di root.
Passaggio 1:aggiornamento del sistema operativo
Prima di avviare l'installazione di Gitea, esegui il comando seguente per aggiornare il tuo sistema con l'ultima versione.
sudo apt-get update -y
sudo apt-get upgrade -y
Passaggio 2:installazione e configurazione di PostgreSQL
Gitea supporta tutti i principali database come MySQL, MariaDB, SQLite, MySQL e PostgreSQL, ma in questa guida PostgreSQL viene utilizzato come database Gitea.
In primo luogo, crea il repository PostgreSQL utilizzando il seguente comando:
sudo sh -c 'echo "deb http://apt.postgresql.org/pub/repos/apt $(lsb_release -cs)-pgdg main" > /etc/apt/sources.list.d/pgdg.list'
Successivamente, dovrai importare la chiave di firma del repository:
wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add -
Ora installa PostgreSQL usando i seguenti comandi:
sudo apt-get update
sudo apt-get -y install postgresql
Quindi, avvia il servizio PostgreSQL, abilitalo all'avvio del sistema e controlla lo stato del servizio PostgreSQL utilizzando il comando seguente:
sudo systemctl start postgresql
sudo systemctl enable postgresql
sudo systemctl status postgresql
Successivamente, devi passare a 'SCRAM-SHA-256' schema da schema di crittografia md5 per una migliore sicurezza. Se vuoi connetterti a PostgreSQL in remoto, devi consentire il tuo indirizzo IP nel file di configurazione di PostgreSQL. Apri il file di configurazione per apportare modifiche utilizzando il seguente comando:
sudo vim /etc/postgresql/14/main/postgresql.conf
Se hai un'altra versione di PostgreSQL installata, cambia il percorso del comando sopra in base ad esso.
Successivamente, modifica le seguenti variabili secondo le tue esigenze:
listen_addresses = 'localhost, 134.122.38.45'
password_encryption = scram-sha-256
Salva ed esci dal file e riavvia il servizio PostgreSQL per applicare le modifiche.
sudo systemctl restart postgresql
Quindi, accedi alla shell di PostgreSQL usando il seguente comando:
sudo -u postgres psql
Quindi crea un ruolo utente e un database per Gitea eseguendo il seguente comando:
postgres=# CREATE ROLE gitea WITH LOGIN PASSWORD '[email protected]';
postgres=# CREATE DATABASE giteadb;
postgres=# GRANT ALL PRIVILEGES ON DATABASE giteadb TO gitea;
postgres=# exit
Qui devi impostare il nome utente, il nome del database e la password per Gitea.
A questo punto, dopo aver configurato PostgreSQL e pronto per Gitea, verifica le impostazioni di autenticazione nel file /etc/postgresql/14/main/pg_hba.conf.
PostgreSQL accetta tutte le connessioni locali per impostazione predefinita.
host all all 127.0.0.1/32 scram-sha-256
Se vuoi usare giteadb in remoto, aggiungi la seguente riga con il tuo indirizzo IP in /etc/postgresql/14/main/pg_hba.conf
host giteadb gitea 134.122.38.0/32 scram-sha-256
Passaggio 3:installa e configura Git
Quindi, installa git usando il seguente comando:
sudo apt install git
Verifica l'installazione di git controllando la versione di Git:
git --version
Uscita:-
git version 2.30.2
Successivamente, devi impostare il tuo nome e indirizzo email per Git.
git config --global user.name "Your Name"
git config --global user.email "[email protected]”
Puoi controllare la tua configurazione Git usando il seguente comando.
git config --list
Uscita:-
user.name=Your Name
[email protected]
Fase 4:crea un utente git per Gitea
Ora dovrai creare un utente Gitea. Puoi farlo con il seguente comando:
sudo adduser \
--system \
--shell /bin/bash \
--gecos 'Git Version Control' \
--group \
--disabled-password \
--home /home/git \
git
Questo creerà un nuovo utente git.
Fase 5 – Installa e configura Gitea
Vai alla pagina di download di Gitea e scarica l'ultima versione del binario Gitea disponibile. Al momento della stesura di questo tutorial, l'ultima versione di Gitea è la 1.15.7. Puoi modificare la variabile VERSION nel comando seguente per installare qualsiasi altra versione.
cd /tmp
GITEAVERSION=1.15.7
wget -O gitea https://dl.gitea.io/gitea/${GITEAVERSION}/gitea-${GITEAVERSION}-linux-amd64
Quindi, sposta il binario Gitea nel percorso di sistema con il seguente comando:
sudo mv /tmp/gitea /usr/local/bin
Quindi, imposta l'autorizzazione eseguibile per il file binario Gitea eseguendo il seguente comando nel terminale:
chmod +x /usr/local/bin/gitea
Successivamente, dovrai creare una struttura di directory per Gitea, per farlo esegui i seguenti comandi:
sudo mkdir -p /etc/gitea
sudo mkdir -p /var/lib/gitea/{custom,data,indexers,public,log}
Quindi, dai le autorizzazioni necessarie affinché Gitea funzioni correttamente con i seguenti comandi:
sudo chown -R git:git /var/lib/gitea/
sudo chown root:git /etc/gitea
sudo chmod -R 750 /var/lib/gitea/
sudo chmod 770 /etc/gitea
Quindi, crea un file di servizio systemd per Gitea con il seguente comando:
vim /etc/systemd/system/gitea.service
Incolla il seguente codice al suo interno.
[Unit]
Description=Gitea
After=syslog.target
After=network.target
After=postgresql.service
[Service]
RestartSec=2s
Type=simple
User=git
Group=git
WorkingDirectory=/var/lib/gitea/
ExecStart=/usr/local/bin/gitea web -c /etc/gitea/app.ini
Restart=always
Environment=USER=git HOME=/home/git GITEA_WORK_DIR=/var/lib/gitea
[Install]
WantedBy=multi-user.target
Salva ed esci dal file. Quindi ricarica il demone systemd e avvia il servizio Gitea utilizzando il comando seguente:
sudo systemctl daemon-reload
sudo systemctl start gitea
Successivamente, è necessario abilitare il servizio Gitea al riavvio del sistema:
sudo systemctl enable gitea
Successivamente, verifica lo stato di Gitea con il seguente comando:
sudo systemctl status gitea
Dovresti vedere il seguente output:
Come puoi vedere, Gitea è avviato e funziona sulla porta 3000 per impostazione predefinita. Puoi verificare il port di Gitea con il seguente comando:
netstat -tulpan | grep 3000
Dovresti vedere un output come il seguente:
tcp6 0 0 :::3000 :::* LISTEN 43778/gitea
Fase 6 – Accedi all'interfaccia web di Gitea
Gitea è ora attivo e in ascolto sulla porta 3000 per impostazione predefinita. Apri il browser e digita https://YOURIPADDRESS:3000.
Successivamente, inserisci i parametri richiesti come segue:
Impostazioni database
Tipo di database:PostgreSQL
Host:127.0.0.1:5432
Nome utente:gitea
Password:inserisci la password che hai scelto durante la creazione del ruolo Postgres.
Nome database:giteadb
SSL:disabilita
Impostazioni generali
Titolo del sito:titolo a scelta.
Percorso radice del repository:/var/lib/gitea/data/repositories
Percorso radice Git LFS:/var/lib/gitea/data/lfs
Esegui come nome utente:git
SSH Server Domain:your_domain/IP
SSH Server Port:22
Gitea HTTP Listen Post:3000
Gitea Base URL:http:// IL TUO INDIRIZZOIP:3000
Percorso registro:/var/lib/gitea/log
In questa fase, puoi configurare la tua posta elettronica e le impostazioni del server e di terze parti, oppure puoi farlo in un secondo momento. Tuttavia, dovresti configurare l'amministratore
nome utente per accedere a Gitea. Quindi, vai su Impostazioni facoltative e inserisci i dettagli dell'impostazione dell'account amministratore e crea "Utente amministratore" per Gitea.
Quindi, fai clic sul pulsante "Installa Gitea". Una volta completata con successo l'installazione, verrai reindirizzato alla dashboard di Gitea mostrata nella pagina seguente:
Ora puoi esplorare Gitea e dall'opzione Amministrazione sito dal tuo account amministratore, puoi configurare altri servizi di terze parti come l'integrazione della directory attiva di Windows con Gitea.
Passaggio 7:impostazione delle notifiche e-mail
Puoi abilitare le notifiche e-mail in Gitea utilizzando Sendmail o tramite un servizio e-mail di terze parti come Amazon SES, Sendgrid.
Per abilitare le notifiche e-mail, apri il file di configurazione di Gitea utilizzando il comando seguente:
vim /etc/gitea/app.in
Quindi, modifica la seguente sezione nel file e aggiungi il seguente codice secondo le tue impostazioni e-mail.
[mailer]
ENABLED = true
FROM = [email protected]
MAILER_TYPE = smtp
HOST = mail.example.com:587
IS_TLS_ENABLED = true
USER = [email protected]
PASSWD = password
Salva ed esci dal file e riavvia il servizio Gitea per applicare le modifiche:
sudo systemctl restart gitea
Fase 10:aggiornamento di Gitea
L'aggiornamento di Gitea è un processo semplice e devi solo scaricare e sostituire il binario di Gitea.
Per prima cosa, interrompi il servizio Gitea:
sudo systemctl stop gitea
Quindi, scarica e installa il binario Gitea usando il seguente comando:
cd /tmp
GITEAVERSION=LATESTVERSION
wget -O gitea https://dl.gitea.io/gitea/${GITEAVERSION}/gitea-${GITEAVERSION}-linux-amd64
sudo mv gitea /usr/local/bin
sudo chmod +x /usr/local/bin/gitea
Successivamente, avvia il servizio Gitea con il seguente comando:
sudo systemctl start gitea
Ora il tuo Gitea è aggiornato senza tempi di fermo.
Conclusione
Congratulazioni! Hai installato con successo il servizio Gitea git su Debian 11. Ora puoi aggiornare facilmente Gitea e gestire il tuo repository git tramite un browser web. Inoltre, puoi chiedermi se hai domande.