GNU/Linux >> Linux Esercitazione >  >> Ubuntu

Come installare e configurare Redmine su Ubuntu 18.04

Redmine è uno degli strumenti software open source più popolari per la gestione dei progetti e il monitoraggio dei problemi. È multipiattaforma e multidatabase e si basa sul framework Ruby on Rails.

Redmine include il supporto per più progetti, wiki, sistema di rilevamento dei problemi, forum, calendari, notifiche e-mail e molto altro.

Questo tutorial descrive come installare e configurare l'ultima versione di Redmine su un server Ubuntu 18.04 utilizzando MySQL come back-end di database e Passenger + Nginx come server di applicazioni Ruby.

Prerequisiti #

Assicurati di aver soddisfatto i seguenti prerequisiti prima di continuare con questo tutorial:

  • Hai un nome di dominio che punta all'IP pubblico del tuo server. In questo tutorial useremo example.com .
  • Sei loggato come utente con privilegi sudo.
  • Hai installato Nginx seguendo queste istruzioni.
  • Hai un certificato SSL installato per il tuo dominio. Puoi installare un certificato SSL Let's Encrypt gratuito seguendo queste istruzioni.

Creazione del database MySQL #

Redmine supporta MySQL/MariaDB, Microsoft SQL Server, SQLite 3 e PostgreSQL. In questo tutorial useremo MySQL come back-end di database.

Se non hai già MySQL installato sul tuo server Ubuntu puoi installarlo seguendo queste istruzioni.

Accedi alla shell MySQL digitando il seguente comando:

sudo mysql

Dall'interno della shell MySQL, esegui la seguente istruzione SQL per creare un nuovo database:

CREATE DATABASE redmine CHARACTER SET utf8mb4;

Quindi, crea un account utente MySQL e concedi l'accesso al database:

GRANT ALL ON redmine.* TO 'redmine'@'localhost' IDENTIFIED BY 'change-with-strong-password';
Assicurati di modificare change-with-strong-password con una password complessa.

Una volta terminato, esci dalla console di MySQL digitando:

EXIT;

Installazione di Ruby #

Il modo più semplice per installare Ruby sul tuo sistema Ubuntu è tramite apt gestore di pacchetti. Al momento in cui scrivo, la versione nei repository di Ubuntu è la 2.5.1 che è l'ultima versione stabile di Ruby.

Installa Ruby digitando:

sudo apt install ruby-full

Se vuoi installare Ruby tramite Rbenv o RVM, controlla questa guida.

Installazione di Passenger e Nginx #

Passenger è un server di applicazioni web veloce e leggero per Ruby, Node.js e Python che può essere integrato con Apache e Nginx. Installeremo Passenger come modulo Nginx.

Assicurati di aver seguito i prerequisiti e di aver installato Nginx prima di continuare con i passaggi seguenti.

Inizia installando i pacchetti necessari:

sudo apt install dirmngr gnupg apt-transport-https ca-certificates

Importa la chiave GPG del repository e abilita Phusionpassengerrepository:

sudo apt-key adv --recv-keys --keyserver hkp://keyserver.ubuntu.com:80 561F9B9CAC40B2F7sudo add-apt-repository 'deb https://oss-binaries.phusionpassenger.com/apt/passenger bionic main'

Una volta abilitato il repository apt, aggiorna l'elenco dei pacchetti e installa il modulo Passenger Nginx con:

sudo apt updatesudo apt install libnginx-mod-http-passenger

Installazione di Redmine su Ubuntu #

Inizieremo installando le dipendenze necessarie per costruire Redmine:

sudo apt install build-essential libmysqlclient-dev imagemagick libmagickwand-dev

Al momento della stesura di questo articolo, l'ultima versione stabile di Redmine è la versione 4.0.0.

Prima di continuare con il passaggio successivo dovresti controllare la pagina di download di Redmine per vedere se è disponibile una versione più recente.

1. Download di Redmine #

Scarica l'archivio Redmine con il seguente comando curl:

sudo curl -L http://www.redmine.org/releases/redmine-4.0.0.tar.gz -o /tmp/redmine.tar.gz

Una volta completato il download, estrai l'archivio e spostalo in /opt directory:

cd /tmpsudo tar zxf /tmp/redmine.tar.gzsudo mv /tmp/redmine-4.0.0 /opt/redmine

2. Configurazione del database Redmine #

Inizia copiando il file di configurazione di esempio di Redmine:

sudo cp /opt/redmine/config/database.yml.example /opt/redmine/config/database.yml

Apri il file con il tuo editor di testo:

sudo nano /opt/redmine/config/database.yml

Cerca la production sezione e inserisci il database MySQL e le informazioni sull'utente che abbiamo creato in precedenza:

/opt/redmine/config/database.yml
production:
  adapter: mysql2
  database: redmine
  host: localhost
  username: redmine
  password: "change-with-strong-password"
  encoding: utf8

Al termine, salva il file ed esci dall'editor.

3. Installazione delle dipendenze di Ruby #

Passa alla directory redmine e installa bundler e altre dipendenze di Ruby:

cd /opt/redmine/sudo gem install bundler --no-rdoc --no-ri sudo bundle install --without development test postgresql sqlite

4. Genera chiavi e migra il database #

Eseguire il comando seguente per generare chiavi e migrare il database:

cd /opt/redmine/sudo bundle exec rake generate_secret_tokensudo RAILS_ENV=production bundle exec rake db:migrate

5. Imposta le autorizzazioni corrette #

Nginx viene eseguito come www-data utente e gruppo. Imposta i permessi corretti emettendo il seguente comando chown:

sudo chown -R www-data: /opt/redmine/

Configura Nginx #

A questo punto dovresti già avere Nginx con certificato SSL installato sul tuo sistema, in caso contrario controlla i prerequisiti per questo tutorial.

Apri il tuo editor di testo e crea il seguente file di blocco del server Nginx:

sudo nano /etc/nginx/sites-available/example.com
/etc/nginx/sites-available/example.com
# Redirect HTTP -> HTTPS
server {
    listen 80;
    server_name www.example.com example.com;

    include snippets/letsencrypt.conf;
    return 301 https://example.com$request_uri;
}

# Redirect WWW -> NON WWW
server {
    listen 443 ssl http2;
    server_name www.example.com;

    ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem;
    ssl_trusted_certificate /etc/letsencrypt/live/example.com/chain.pem;
    include snippets/ssl.conf;

    return 301 https://example.com$request_uri;
}

server {
    listen 443 ssl http2;
    server_name example.com;

    root /opt/redmine/public;

    # SSL parameters
    ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem;
    ssl_trusted_certificate /etc/letsencrypt/live/example.com/chain.pem;
    include snippets/ssl.conf;
    include snippets/letsencrypt.conf;

    # log files
    access_log /var/log/nginx/example.com.access.log;
    error_log /var/log/nginx/example.com.error.log;

    passenger_enabled on;
    passenger_min_instances 1;
    client_max_body_size 10m;
}
Non dimenticare di sostituire example.com con il tuo dominio Redmine e impostare il percorso corretto per i file del certificato SSL. Tutte le richieste HTTP verranno reindirizzate a HTTPS. Gli snippet utilizzati in questa configurazione vengono creati in questa guida.

Abilita il blocco del server creando un collegamento simbolico a sites-enabled directory:

sudo ln -s /etc/nginx/sites-available/example.com /etc/nginx/sites-enabled/

Prima di riavviare il servizio Nginx fai un test per assicurarti che non ci siano errori di sintassi:

sudo nginx -t

Se non ci sono errori, l'output dovrebbe essere simile a questo:

nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

Infine, riavvia il servizio Nginx digitando:

sudo systemctl restart nginx

Accesso a Redmine #

Apri il browser, digita il tuo dominio e supponendo che l'installazione sia andata a buon fine, apparirà una schermata simile alla seguente:

Le credenziali di accesso predefinite per Redmine sono:

  • Nome utente:amministratore
  • Password:amministratore

Quando accedi per la prima volta, ti verrà chiesto di cambiare la password come mostrato di seguito:

Una volta modificata la password verrai reindirizzato alla pagina dell'account utente.


Ubuntu
  1. Come installare e configurare Redis su Ubuntu 18.04

  2. Come installare e configurare Samba su Ubuntu 18.04

  3. Come installare e configurare Redis su Ubuntu 20.04

  4. Come installare e configurare Jenkins su Ubuntu 20.04

  5. Come installare e configurare Mariadb 10 in Ubuntu 20.04

Come installare e configurare Neo4j su Ubuntu 20.04

Come installare e configurare Ubuntu SDK in Ubuntu 16.04 e 14.04

Come installare e configurare PostgreSQL su Ubuntu

Come installare e configurare Hadoop su Ubuntu 20.04

Come installare e configurare Jenkins su Ubuntu

Come installare e configurare Jenkins in Ubuntu 20.04