Installazione software · 10 min read · Dec 21, 2025
Come installare lo strumento di gestione progetti Redmine su Ubuntu 22.04

Redmine è uno strumento di gestione progetti e tracciamento delle problematiche gratuito e open-source. È un software applicativo basato sul web, principalmente scritto in Ruby on Rails. È multipiattaforma e supporta diversi database e lingue.
Redmine è flessibile e può essere utilizzato per diversi tipi di organizzazioni e progetti, da piccole, medie o grandi organizzazioni. Ti consente di creare e gestire più progetti, e ogni progetto ha il proprio Wiki, Forum, tracciamento delle problematiche, ecc. Inoltre, ti consente di creare ruoli personalizzati in base alle esigenze della tua organizzazione, e molto altro.
Redmine è rilasciato sotto la licenza GNU GPL v2 e può essere installato su qualsiasi sistema operativo come Linux, Windows o macOS. Supporta diversi tipi di database, tra cui PostgreSQL, MySQL e SQLite (predefinito).
In questa guida, installerai Redmine con il server web Apache2 e il server MySQL su un server Ubuntu 22.04. Inoltre, proteggerai l’installazione di Redmine con certificati SSL.
Prerequisiti
Questo tutorial richiede i seguenti requisiti:
- Un server Ubuntu 22.04 - Questo esempio utilizza un server Ubuntu con il nome host redmine-server.
- Un utente non root con privilegi sudo - Ma puoi anche utilizzare l’utente root.
- Un nome di dominio puntato all’indirizzo IP del tuo server - per la produzione, devi assicurarti che il tuo nome di dominio sia puntato all’indirizzo IP del tuo server.
Una volta che hai tutto in ordine, puoi procedere al primo passo dell’installazione di Redmine.
Installazione delle dipendenze
Redmine è uno strumento di gestione progetti e tracciamento delle problematiche open-source principalmente scritto in Ruby e Ruby on Rails (RoR). Per installare Redmine, devi prima installare Ruby, quindi puoi installare altre dipendenze come il server web Apache2 e il database utilizzando il server MySQL.
In questo esempio, eseguirai Redmine con il server web Apache2 e il server MySQL.
Prima di iniziare a installare i pacchetti, esegui il comando apt qui sotto per aggiornare e rinfrescare l’indice dei pacchetti di Ubuntu.
sudo apt updateDopo che il repository è stato aggiornato, installa alcune delle seguenti dipendenze di pacchetto tramite il comando apt qui sotto.
Con questo comando, installerai il server web Apache2 seguito dal pacchetto linapache2-mod-passenger che sarà utilizzato per configurare l’applicazione RoR in modo da funzionare sotto Apache2. Installerai anche i pacchetti Ruby.
sudo apt install apache2 ruby ruby-dev build-essential libapache2-mod-passenger libmysqlclient-devQuando ti viene chiesto di confermare l’installazione, inserisci y e poi premi ENTER per procedere.

Dopo che Apache2 e Ruby sono stati installati, esegui il seguente comando per installare il server MySQL. Redmine supporta più RDBMS come PostgreSQL, MySQL/MariaDB e SQLite. In questo esempio utilizzerai il server MySQL.
sudo apt install mysql-serverInserisci y quando ti viene chiesto di confermare l’installazione, poi premi ENTER per procedere.

Per l’installazione di Redmine, dovrai anche installare un bundler sul tuo server Ubuntu. Il bundler è un comando che sarà utilizzato per gestire i pacchetti Ruby Gems.
Esegui il seguente comando per installare un bundler sul tuo sistema.
sudo gem install bundlerUna volta che il bundler è installato, vedrai un output simile al seguente:

Infine, verifica i servizi Apache2 e MySQL tramite il comando systemctl qui sotto. Questo garantirà che entrambi i servizi Apache2 e MariaDB siano in esecuzione e abilitati.
Verifica il servizio Apache2.
sudo systemctl is-enabled apache2
sudo systemctl status apache2Qui puoi vedere che il servizio Apache2 è abilitato e verrà eseguito automaticamente all’avvio del sistema. E lo stato attuale del servizio è in esecuzione.

Verifica il servizio MySQL.
sudo systemctl is-enabled mysql
sudo systemctl status mysqlVedrai un output simile al seguente - Il servizio MySQL è abilitato e verrà eseguito automaticamente all’avvio. E lo stato attuale del servizio MySQL è in esecuzione.

Configurazione del server MySQL
Dopo che Apache2 e il server MySQL sono stati installati, imposterai la password root di MySQL e proteggerai il deployment tramite mysql_secure_installation. Poi, creerai anche un nuovo database MySQL e un utente per Redmine.
Accedi a MySQL tramite il comando mysql qui sotto.
sudo mysqlOra cambia la password root di MySQL tramite la seguente query. E assicurati di cambiare la password con la tua password. Poi, digita quit per uscire dalla shell di MySQL.
ALTER USER root@localhost IDENTIFIED WITH mysql_native_password BY 'password';
quit
Successivamente, esegui il seguente comando per iniziare a proteggere il deployment del server MySQL.
sudo mysql_secure_installationQuando ti viene chiesto per la password root di MySQL, inserisci la tua password corretta.
Poi, ti verranno chieste altre configurazioni di MySQL come disabilitare il login remoto per l’utente root, rimuovere l’utente anonimo, rimuovere il database di test predefinito e ricaricare tutti i privilegi delle tabelle. Per tutte queste impostazioni del server MySQL, inserisci Y per confermare la configurazione.
Dopo aver protetto il deployment di MySQL, è tempo di impostare un nuovo database e un utente per Redmine.
Accedi alla shell di MySQL tramite il comando mysql qui sotto. Ti verrà chiesto per la password root di MySQL, inserisci la password corretta per il tuo utente root di MySQL, poi premi ENTER.
sudo mysql -u root -pOra esegui le seguenti query per creare un nuovo database MySQL e un utente per Redmine. In questo esempio, creerai un nuovo database e un utente redmine con la password ‘secretPassword‘. Puoi sostituire la password del database con la tua password.
CREATE DATABASE redmine CHARACTER SET utf8mb4;
CREATE USER 'redmine'@'localhost' IDENTIFIED BY 'secretPassword';
GRANT ALL PRIVILEGES ON redmine.* TO 'redmine'@'localhost';
FLUSH PRIVILEGES;
Successivamente, esegui le seguenti query per verificare i privilegi dell’utente MySQL redmine. Assicurati che l’utente MySQL redmine abbia privilegi sul database redmine.
SHOW GRANTS FOR redmine@localhost;
quitQui puoi vedere l’utente MySQL redmine@localhost con privilegi sul database redmine.

Infine, digita quit per disconnetterti dalla shell di MySQL.
Con tutte le dipendenze installate e il database MySQL e l’utente creati, sei pronto per installare lo strumento di gestione progetti Redmine sul tuo server Ubuntu.
Installazione di Redmine
In questo passaggio, installerai l’ultima versione di Redmine. Al momento della scrittura, l’ultima versione di Redmine è la v5.0.2.
Scaricherai il codice sorgente di Redmine, configurerai il database, installerai le dipendenze Ruby tramite build, imposterai il token segreto di Redmine e migrerai il database.
In questo esempio, installerai Redmine all’interno della directory /opt/redmine.
Spostati nella directory /opt.
cd /opt/Ora, scarica il codice sorgente di Redmine con il comando wget qui sotto. Una volta scaricato, vedrai il file redmine-5.0.2.tar.gz nella tua directory /opt.
wget https://www.redmine.org/releases/redmine-5.0.2.tar.gzSuccessivamente, esegui il seguente comando per estrarre il codice sorgente di Redmine redmine-5.0.2.tar.gz e creare un nuovo collegamento simbolico per la directory di Redmine a /opt/redmine.
tar -xvzf redmine-5.0.2.tar.gz
sudo ln -s redmine-5.0.2 redmineLa directory principale di installazione di Redmine sarà /opt/redmine.
Spostati nella directory /opt/redmine.
cd /opt/redmine/Copia la configurazione del database predefinita ‘config/database.yml.example’ in ‘config/database.yml’. Poi, apri il file di configurazione del database ‘config/database.yml’ utilizzando l’editor nano.
cp config/database.yml.example config/database.yml
nano config/database.yml
Nella sezione ‘production’, modifica i dettagli del database MySQL e dell’utente. Assicurati di utilizzare l’utente e la password del database corretti per Redmine.
production:
adapter: mysql2
database: redmine
host: localhost
username: redmine
password: "secretPassword"
# Usa "utf8" invece di "utfmb4" per MySQL prima della versione 5.7.7
encoding: utf8mb4Salva il file ed esci dall’editor quando hai finito.
Successivamente, esegui il seguente comando bundler per installare le dipendenze Ruby per l’applicazione Redmine.
bundle config set --local without 'development test'
bundle installVedrai un output simile al seguente:

Una volta che le dipendenze di Redmine sono installate, esegui il seguente comando per generare il token segreto di Redmine e migrare il database.
bundle exec rake generate_secret_token
RAILS_ENV=production bundle exec rake db:migrateNello screenshot seguente, puoi vedere che il token segreto di Redmine è stato generato e il processo di migrazione del database di Redmine.

Infine, carica i dati predefiniti nella tua installazione di Redmine con il seguente comando. Quando ti viene chiesto di scegliere la lingua, inserisci en per inglese.
RAILS_ENV=production bundle exec rake redmine:load_default_dataQuando i dati predefiniti di Redmine sono stati caricati, vedrai il messaggio di output come “ Dati di configurazione predefiniti caricati “.
Ora che Redmine è installato, imposterai un host virtuale Apache2 per Redmine.
Impostazione dell’host virtuale per Redmine
In questo passaggio, creerai una nuova configurazione dell’host virtuale Apache2 per Redmine. Assicurati di avere il nome di dominio che punta all’indirizzo IP del tuo server e che i certificati SSL siano stati generati.
Esegui il seguente comando per abilitare i moduli Apache ssl e rewrite.
sudo a2enmod ssl rewriteVedrai un output simile al seguente:

Ora, crea una nuova configurazione dell’host virtuale Apache2 ‘/etc/apache2/sites-available/redmine.conf‘ utilizzando l’editor nano.
sudo nano /etc/apache2/sites-available/redmine.confAggiungi la seguente configurazione al file. E assicurati di cambiare il nome di dominio e il percorso dei certificati SSL con la tua configurazione.
ServerName redmine.howtoforge.local
ServerAdmin [email protected]
# Reindirizza le richieste a SSL
Redirect permanent "/" "https://redmine.howtoforge.local/"
ServerName redmine.howtoforge.local
RailsEnv production
DocumentRoot /opt/redmine/public
ErrorLog ${APACHE_LOG_DIR}/redmine.howtoforge.local.error.log
CustomLog ${APACHE_LOG_DIR}/redmine.howtoforge.local.access.log combined
SSLEngine on
SSLCertificateFile /etc/letsencrypt/live/redmine.howtoforge.local/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/redmine.howtoforge.local/privkey.pem
Allow from all
Require all granted
Salva il file ed esci dall’editor.
Successivamente, esegui il seguente comando per attivare il file dell’host virtuale ‘redmine.conf‘. Poi, verifica la tua configurazione Apache2 per assicurarti di avere la configurazione corretta.
sudo a2ensite redmine.conf
sudo apachectl configtestOra riceverai un messaggio di output come “ Sintassi OK “ quando hai configurazioni Apache2 corrette.

Infine, riavvia il servizio Apache2 tramite il comando systemctl qui sotto per applicare il nuovo file dell’host virtuale.
sudo systemctl restart apache2A questo punto, Redmine è installato e l’host virtuale è configurato. Dovresti ora accedere alla tua installazione di Redmine tramite il tuo nome di dominio.
Impostazione del firewall UFW
In produzione, dovresti attivare il firewall. Per il sistema Ubuntu, puoi utilizzare il firewall predefinito UFW (Uncomplicated Firewall).
Ora, aggiungerai le regole UFW che aprono i servizi HTTP e HTTPS predefiniti in modo che Redmine sia accessibile dall’esterno della rete.
Esegui il seguente comando ufw per aggiungere il profilo dell’applicazione “OpenSSH“ al UFW. Poi, avvia e abilita il firewall UFW.
sudo ufw allow "OpenSSH"
sudo ufw enableQuando ti viene chiesto di confermare, inserisci y per avviare e abilitare il servizio del firewall UFW.

Successivamente, esegui il seguente comando per aggiungere il profilo dell’applicazione “Apache Full“ al firewall. Poi, verifica lo stato di UFW tramite il seguente comando.
sudo ufw allow "Apache Full"
sudo ufw statusDovresti vedere che lo stato del firewall UFW è attivo e i profili delle applicazioni attualmente abilitati sono OpenSSH e “Apache Full“. Questo aprirà la porta SSH predefinita 22 e le porte dei servizi HTTP e HTTPS 80 e 443.

Installazione di Redmine
Apri il browser web e visita il nome di dominio della tua installazione di Redmine (ad es.: https://redmine.howtoforge.local/).
Ora vedrai la homepage predefinita dello strumento di gestione progetti e tracciamento delle problematiche Redmine. Clicca su “ Accedi “ per accedere alla dashboard di amministrazione di Redmine.

Inserisci l’utente e la password di amministrazione predefiniti di Redmine “ admin - admin “.

Dopo aver effettuato l’accesso, ti verrà chiesto di cambiare la password predefinita per Redmine. Inserisci la nuova password per la tua installazione di Redmine e clicca su “ Applica “.

Infine, modifica i dettagli del tuo utente amministratore di Redmine e clicca su “ Salva “ per applicare le configurazioni. Hai ora configurato le basi di Redmine.

Per aggiungere un nuovo progetto, clicca sul menu “ Progetti “. Dovresti essere in grado di creare, modificare o eliminare progetti su Redmine.

Ora, se vuoi aggiungere configurazioni a Redmine, clicca sul menu “ Amministrazione “. Con questo, puoi aggiungere più utenti, impostare gruppi, definire ruoli, abilitare l’autenticazione tramite un’applicazione di terze parti come LDAP, e molto altro.

Conclusione
In questo tutorial, hai installato e configurato lo strumento di gestione progetti e tracciamento delle problematiche Redmine sul server Ubuntu 22.04. Hai anche configurato il database MariaDB e il server web Nginx per Redmine. Inoltre, hai anche protetto l’installazione di Redmine con certificati SSL.
Ora hai Redmine installato sul tuo sistema, puoi estendere la tua installazione di Redmine aggiungendo alcune configurazioni aggiuntive come integrare Redmine nelle tue attuali infrastrutture come l’aggiunta di autenticazioni LDAP e integrazioni con SCM come SVN, Git e Mercurial. Inoltre, puoi aggiungere ruoli in base alla tua organizzazione o azienda.
Ricevi i nuovi post nella tua casella di posta.
Nessuno spam. Disiscriviti in qualsiasi momento.