androide

Come installare e configurare Redmine su Centos 7

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

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

Sommario:

Anonim

Redmine è uno dei più popolari strumenti di gestione dei progetti open source e software di 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 tratteremo i passaggi necessari per installare e configurare l'ultima versione di Redmine su un server CentOS 7 utilizzando MariaDB come back-end del database e Passenger + Nginx come server delle applicazioni Ruby.

Prerequisiti

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

  • Nome di dominio che punta all'IP pubblico del server. In questo tutorial useremo example.com Accesso come utente con privilegi sudo.

Installa i pacchetti richiesti per compilare Redmine e Ruby dal sorgente:

sudo yum install curl gpg gcc gcc-c++ make patch autoconf automake bison libffi-devel libtool sudo yum install readline-devel sqlite-devel zlib-devel openssl-develh readline glibc-headers glibc-devel sudo yum install mariadb-devel zlib libyaml-devel bzip2 iconv-devel ImageMagick ImageMagick-devel

Creazione del database MySQL

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

Se non hai MariaDB o MySQL installato sul tuo server CentOS, puoi installarlo seguendo queste istruzioni.

Accedi alla shell MySQL digitando il comando seguente:

sudo mysql

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

CREATE DATABASE redmine CHARACTER SET utf8;

Successivamente, 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 cambiare change-with-strong-password con una password complessa.

Una volta completato, esci dalla shell mysql digitando:

EXIT;

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.

Installa il repository EPEL e i pacchetti richiesti:

sudo yum install epel-release yum-utils pygpgme sudo yum-config-manager --enable epel

Abilita il repository Phusionpassenger:

sudo yum-config-manager --add-repo

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

sudo yum install nginx passenger passenger-devel

Creazione di un nuovo utente di sistema

Crea un nuovo utente e gruppo, che eseguirà l'istanza Redmine, per semplicità redmine l'utente redmine :

sudo useradd -m -U -r -d /opt/redmine redmine

Aggiungi l'utente nginx al nuovo gruppo utenti e modifica le autorizzazioni della directory /opt/redmine modo che Nginx possa accedervi:

sudo usermod -a -G redmine nginx sudo chmod 750 /opt/redmine

Installazione di Ruby

La versione di Ruby nei repository CentOS è piuttosto obsoleta e non supportata da Redmine. Installeremo Ruby usando RVM.

Passa all'utente redmine digitando:

sudo su - redmine

Importa le chiavi GPG e installa RVM:

gpg --keyserver hkp://pool.sks-keyservers.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 7D2BAF1CF37B13E2069D6956105BD0E739499BDB curl -sSL https://get.rvm.io | bash -s stable curl -sSL https://get.rvm.io | bash -s stable

Per iniziare a utilizzare l'origine RVM il file rvm :

source /opt/redmine/.rvm/scripts/rvm

Ora possiamo installare Ruby eseguendo:

rvm install 2.5 rvm --default use 2.5 Se desideri installare Ruby tramite Rbenv, consulta questa guida.

Installazione di Redmine su CentOS

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

Prima di continuare con i passaggi successivi, è necessario controllare la pagina di download di Redmine per verificare se è disponibile una versione più recente.

Assicurati di eseguire i seguenti passaggi come utente redmine .

1. Download di Redmine

Scarica l'archivio Redmine con il seguente comando di arricciatura:

curl -L http://www.redmine.org/releases/redmine-4.0.1.tar.gz -o redmine.tar.gz

Una volta completato il download estrarre l'archivio:

tar -xvf redmine.tar.gz

2. Configurazione del database Redmine

Copia il file di configurazione del database di esempio Redmine:

cp /opt/redmine/redmine-4.0.1/config/database.yml.example /opt/redmine/redmine-4.0.1/config/database.yml

Apri il file con il tuo editor di testo:

nano /opt/redmine/redmine-4.0.1/config/database.yml

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

/opt/redmine/redmine-4.0.1/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-4.0.1 e installare il bundler e altre dipendenze di Ruby:

cd ~/redmine-4.0.1 gem install bundler --no-rdoc --no-ri 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:

bundle exec rake generate_secret_token RAILS_ENV=production bundle exec rake db:migrate

Configurare Nginx

Torna al tuo utente sudo:

exit

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

sudo nano /etc/nginx/conf.d/example.com.conf /etc/nginx/conf.d/example.com.conf

passenger_root /usr/share/ruby/vendor_ruby/phusion_passenger/locations.ini; passenger_ruby /opt/redmine/.rvm/gems/default/wrappers/ruby; passenger_instance_registry_dir /var/run/passenger-instreg; server { listen 80; server_name example.com www.example.com; root /opt/redmine/redmine-4.0.1/public; # 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.

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

Configura Nginx con SSL

Una volta generato il certificato, modifica la configurazione del dominio Nginx come segue:

sudo nano /etc/nginx/conf.d/example.com.conf /etc/nginx/conf.d/example.com

passenger_root /usr/share/ruby/vendor_ruby/phusion_passenger/locations.ini; passenger_ruby /opt/redmine/.rvm/gems/default/wrappers/ruby; passenger_instance_registry_dir /var/run/passenger-instreg; # 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/redmine-4.0.1/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

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 correttamente sul sistema CentOS. Ora dovresti controllare la documentazione di Redmine e saperne di più su come configurare e utilizzare Redmine.

centos redmine ruby ​​mysql mariadb nginx