Installazione e Configurazione Base di Gitea su Ubuntu Server 24.04

da | Dic 16, 2025

 

 

Nel panorama dello sviluppo software moderno, la gestione del codice sorgente è un elemento fondamentale per garantire collaborazione, controllo delle versioni e integrazione continua.

Tra le alternative self-hosted più leggere e performanti, Gitea si distingue per semplicità, efficienza e facilità di configurazione.

In questo articolo vedremo passo dopo passo come installare e configurare Gitea su Ubuntu Server 24.04, partendo dai prerequisiti di sistema fino alla messa online dell’interfaccia web.

Grazie alla sua architettura minimale, Gitea può essere eseguito anche su server con risorse limitate, offrendo al tempo stesso tutte le funzionalità essenziali di una piattaforma Git completa: repository, pull request, issue tracking, wiki e integrazione CI/CD.

 

PREREQUISITI

  • Un server Ubuntu con accesso amministratore (utente con sudo) oppure root.
  • Sistema operativo aggiornato: esegui sudo apt update && sudo apt upgrade.
  • Installazione di Git (versione ≥ 2.0).
  • Un database supportato, scegliendo tra:
  • SQLite (per installazioni piccole)
  • PostgreSQL (raccomandato)
  • MySQL o MariaDB

AGGIORNAMENTO DEL SISTEMA

Aggiornare il sistema con i seguenti comandi:

INSTALLAZIONE DI SQLITE

In questo tutorial utilizzerò SQLite come database per Gitea.

È possibile selezionare uno qualsiasi dei database supportati nell’installazione in base alle esigenze.

Installare SQLite usa il seguente comando:

Verificare la versione con il seguente comando:

Dovremmo visualizzare un output simile al seguente:

 

INSTALLAZIONE DI GIT

Gitea è un servizio Git self-hosted indolore. Con funzionalità simili a quelle di GitHub, Bitbucket o GitLab.

Git è lo standard per i sistemi di controllo di versione distribuiti e può essere installato su sistemi Ubuntu utilizzando .apt

Installare il pacchetto Git utilizzando il seguente comando:

Controllare la versione di Git installata con il seguente comando:

Dovremmo visualizzare un output simile al seguente:

Creare un utente Git con nome utente come git con privilegi limitati con il comando:

 

DOWNLOAD DEL BINARIO DI GITEA

La prima cosa da fare è verificare l’utlima versione stabile di Gitea al seguente link:

Download Gitea

ATTENZIONE: durante la stesura del seguente articolo l’ultima versione stabile disponibile è la 1.25.1

Scaricare il binario con il seguente comando:

Spostare il file binario Gitea in /usr/local/bin con il comando:

Rendere eseguibile il file binario con il comando:

Creare la struttura di directory e impostare le autorizzazioni e la proprietà necessarie con i seguenti comandi:

Creare un file di unità Systemd da utilizzare per eseguire il gitea in background e controllare con .systemctl

Scaricare il file nella directory /etc/systemd/system/ utilizzando il seguente comando:

Ricaricare il servizio Gitea con il comando:

Avviare il servizio Gitea con il comando:

Abilitare il servizio Gitea con il comando:

Controlla lo stato del servizio Gitea con il comando:

Se è tutto OK dovremmo visualizzare il seguente output:

CONFIGURAZIONE DI GITEA DA WEB GUI

Da un qualsiasi browser richiamare il link:

http://FQDN-SERVER-O-IP:3000

In questa schermata modificare solo la tipologia del database e accertarsi che il path del DB sia /var/lib/gitea/data/gitea.db

Selezionare Email Settings

Inserire tutte le info relative al server SMTP quindi cliccare su Server and Third-Party Service Settings

Configurare tutti i parametri necessari quindi cliccare su Administrator Account Settings

Creare l’utente amministratore inserendo il nome, password e email quindi cliccare Install Gitea

Attendere qualche secondo

Se è andato tutto a buon fine dovremmo visualizzare la Dashboard di Gitea

 

AGGIORNAMENTO DI GITEA

I passaggi seguenti mostrano come eseguire l’aggiornamento a una versione più recente di Gitea quando sarà disponibile.

Per eseguire l’aggiornamento a una nuova versione per prima cosa interrompere il servizio Gitea con il comando:

Scaricare il binario Gitea dalla pagina di download con il comando:

Spostare il file binario Gitea con il comando:

Quindi renderlo eseguibile con il comando:

Riavviare il servizio di Gitea con il comando:

Per verificare che la versione di Gitea sia cambiata eseguire il comando:

Dovremmo visualizzare un output simile al seguente:

 

FUNZIONALITA DI GITEA

Gitea è una piattaforma self-hosted per la gestione del codice simile a GitHub o GitLab, ma leggera, open source e facile da installare.

Di seguito un elenco di tutte le principali funzionalità suddivise per categoria

1. Gestione dei repository Git

Creare, clonare, importare e cancellare repository Git.

Supporto per SSH, HTTPS e Gitea Actions.

Gestione di branch, tag, commit e merge.

Supporto per submodule e LFS (Large File Storage).

Protezione dei branch (branch protetti, regole di merge, revisioni obbligatorie).

Sistema di web editor: modifica file direttamente via interfaccia web.

Repository template e fork per clonare progetti esistenti.

2. Collaborazione e sviluppo

Pull request (PR) con code review, commenti e approvazioni.

Issue tracking integrato (bug, feature request, ecc.).

Milestones, labels e progetti kanban per organizzare il lavoro.

Assignees e mention (@utente) per coordinare il team.

Wiki per la documentazione del progetto.

Release e changelog automatici.

Notifiche e watch per ricevere aggiornamenti sui progetti.

⚙️ 3. Automazione e CI/CD

Gitea Actions (simili a GitHub Actions):

  • esecuzione di workflow CI/CD basati su YAML (.gitea/workflows/).
  • Integrazione con sistemi esterni di CI (Jenkins, Drone, Woodpecker, ecc.).
  • Webhook personalizzati per eventi (push, PR, issue, ecc.).
  • API REST e GraphQL per automazioni avanzate.

4. Gestione utenti e permessi

Autenticazione tramite:

  • utente/password locali
  • LDAP / Active Directory
  • OAuth2 / OpenID Connect
  • PAM / SMTP

Ruoli e permessi granulari per organizzazioni, team e repository.

Gestione di organizzazioni e team (come su GitHub).

Collaboratori per repository singoli.

️ 5. Amministrazione del sistema

Dashboard amministrativa con monitoraggio dei job, code, attività recenti.

Gestione utenti e organizzazioni.

Configurazione SMTP per email di notifica.

Backup e migrazione dei dati integrati.

Supporto per database multipli: SQLite, MySQL/MariaDB, PostgreSQL, MSSQL.

Log di sistema e auditing delle operazioni.

6. Interfaccia e accessibilità

Interfaccia web moderna e leggera.

Tema scuro / chiaro, traduzioni in decine di lingue.

Editor Markdown con preview integrata.

API pubblica per interagire con Gitea da script o app esterne.

Compatibilità con Visual Studio Code, Git CLI, e altri client Git.

7. Integrazioni e estensioni

Webhooks per notifiche e integrazioni con:

  • Slack, Discord, Mattermost, Matrix
  • Jenkins, Drone CI, Woodpecker, ArgoCD, ecc.
  • OAuth provider: Gitea può fungere da server OAuth2.
  • Gitea può servire pacchetti software (Gitea Packages):
  • npm, Maven, PyPI, Docker, NuGet, Go modules, etc.

️ 8. Gitea Packages (registry integrato)

Permette di pubblicare e distribuire pacchetti:

  • Docker images
  • npm / NodeJS
  • Maven / Java
  • NuGet / .NET
  • PyPI / Python
  • RubyGems / Ruby
  • Go Modules
  • Debian / RPM

9. Strumenti DevOps aggiuntivi

Task runner con cron job integrati.

Mirror automatici da GitHub, GitLab, Bitbucket.

Import/export progetti in formato Git.

Statistiche repository (commit activity, linguaggi, ecc.).

10. Deployment e hosting

Esecuzione su:

  • Linux, macOS, Windows
  • Docker, Podman, Kubernetes

Facile da integrare in ambienti self-hosted o cloud.

Consumo di risorse estremamente ridotto (funziona anche su Raspberry Pi).

Articoli Recenti

Veeam Backup

Monitoring

Friends

  • My English Lab  English School
  • ChrSystem   Servizi ICT
  • Since 01  Kreative Graphics

Database

Networking

Autori

  • Raffaele Chiatto  Amministratore
  • Marco Valle  Autore
  • Angelo Lauria  Autore
  • Edoardo Prot  Autore
  • Davide D’Urso  Autore
Raffaele Chiatto

Raffaele Chiatto

Sono Raffaele Chiatto, un appassionato di informatica a 360 gradi. Tutto è iniziato nel 1996, quando ho scoperto il mondo dell'informatica grazie a Windows 95, e da quel momento non ho più smesso di esplorare e imparare. Ogni giorno mi dedico con curiosità e passione a scoprire le nuove frontiere di questo settore in continua evoluzione.
Tag: Gitea | SQLite | Ubuntu
Categorie: DevOps | Gitea | Ubuntu

Related Post

0 commenti

Invia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

Virtualizzazione

Linux

Microsoft

Apple

Backup

Database

Security

Automazione