androide

Come installare e configurare Redmine su debian 9

How to install #Redmine with Apache on CentOS 7 #linux

How to install #Redmine with Apache on CentOS 7 #linux

Sommario:

Anonim

Redmine è un'applicazione gratuita e open source per la gestione dei progetti e il monitoraggio dei problemi. È multipiattaforma e cross-database e costruito sulla base del framework Ruby on Rails.

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

In questo tutorial, ti mostreremo come installare e configurare l'ultima versione di Redmine su un server Debian 9 usando MySQL come back-end del database e Passenger + Nginx come server di applicazioni Ruby.

Prerequisiti

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

  • Avere un nome di dominio che punta all'IP pubblico del server. Useremo example.com Accesso come utente con privilegi di sudo. Installa Nginx. Avere un certificato SSL installato per il tuo dominio.

Creazione di un database MySQL

Redmine supporta MySQL / MariaDB, Microsoft SQL Server, SQLite 3 e PostgreSQL. Useremo MariaDB come back-end del database. Assicurati di avere almeno MySQL 5.7 o MariaDB 10.3 installati sul tuo computer.

Se MariaDB o MySQL non sono installati sul tuo server Debian puoi installarlo usando queste istruzioni.

Inizia accedendo alla console MySQL digitando:

sudo mysql

Eseguire la seguente istruzione SQL per creare un nuovo database:

CREATE DATABASE redmine CHARACTER SET utf8mb4;

Crea un nuovo account utente MySQL e concedi l'accesso al database:

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

Una volta terminato, disconnettersi dalla console MariaDB digitando:

EXIT;

Installazione di Ruby

Il modo più semplice per installare Ruby su Debian è usando il gestore pacchetti apt :

Installa Ruby digitando:

sudo apt install ruby-full

Al momento in cui scrivo, la versione nei repository Debian è 2.3.3p222 che è supportata dall'ultima versione di Redmine.

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.

Assicurarsi che Nginx sia installato prima di continuare con i seguenti passaggi.

Installazione dei pacchetti necessari per abilitare un repository

sudo apt install dirmngr gnupg apt-transport-https ca-certificates software-properties-common

Importa la chiave GPG del repository e abilita il repository Phusionpassenger:

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

Aggiorna l'elenco dei pacchetti e installa il modulo Passenger Nginx con:

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

Installazione di Redmine su Debian

Inizia installando le dipendenze necessarie per compilare Redmine:

sudo apt install build-essential libmariadbclient-dev imagemagick libmagickwand-dev curl ruby-dev libxslt-dev libxml2-dev zlib1g-dev

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

Prima di continuare con il passaggio successivo, è necessario controllare la pagina di download di Redmine per una versione più recente.

1. Download di Redmine

Scarica l'archivio Redmine usando il seguente comando curl:

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

Una volta completato il download, estrarre l'archivio e spostarlo nella directory /opt :

cd /tmp sudo tar zxf /tmp/redmine.tar.gz sudo mv /tmp/redmine-4.0.4 /opt/redmine

2. Configurazione del database Redmine

Copia il file di configurazione di esempio 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 sezione di production e inserisci il database MySQL e le informazioni 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

Una volta fatto, salva il file ed esci dall'editor.

3. Installazione delle dipendenze di Ruby

Passare alla directory redmine e installare il 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. Generare chiavi e migrare il database

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

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

5. Impostare le autorizzazioni corrette

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

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

Configura Nginx

Ormai, dovresti già avere Nginx con certificato SSL installato sul tuo sistema, se non 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 sono creati in questa guida.

Abilitare il blocco server creando un collegamento simbolico alla directory sites-enabled per i sites-enabled :

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

Prima di riavviare il servizio Nginx, eseguire un test per accertarsi che non vi siano errori di sintassi:

sudo nginx -t

Se non ci sono errori, l'output dovrebbe apparire così:

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 tuo browser, digita il tuo dominio e supponendo che l'installazione sia andata a buon fine, apparirà una schermata simile alla seguente:

Dopo aver modificato la password, verrai reindirizzato alla pagina dell'account utente.

Conclusione

Redmine è stato installato con successo sul proprio sistema Debian. Ora dovresti controllare la documentazione di Redmine e saperne di più su come configurare e utilizzare Redmine.

debian redmine ruby ​​mysql nginx