In questo tutorial, ti mostreremo come installare Redmine su CentOS 8. Per chi non lo sapesse, Redmine è un'app Web per la gestione dei progetti che consente agli utenti di gestire i progetti in modo flessibile offrendo al contempo solidi strumenti di monitoraggio e un'ampia libreria di plug-in. Questa soluzione gratuita e open source offre un sostituto degli strumenti di gestione dei lavori a pagamento e contiene il supporto per wiki, forum, calendari e programmi di visualizzazione delle informazioni.
Questo articolo presuppone che tu abbia almeno una conoscenza di base di Linux, sappia come usare la shell e, soprattutto, che ospiti il tuo sito sul tuo VPS. L'installazione è abbastanza semplice e presuppone che tu sono in esecuzione nell'account root, in caso contrario potrebbe essere necessario aggiungere 'sudo
' ai comandi per ottenere i privilegi di root. Ti mostrerò l'installazione passo passo dell'app Web di gestione dei progetti Redmine su un server CentOS 8.
Prerequisiti
- Un server che esegue uno dei seguenti sistemi operativi:CentOS 8.
- Si consiglia di utilizzare una nuova installazione del sistema operativo per prevenire potenziali problemi.
- Un
non-root sudo user
o accedere all'root user
. Ti consigliamo di agire comenon-root sudo user
, tuttavia, poiché puoi danneggiare il tuo sistema se non stai attento quando agisci come root.
Installa Redmine su CentOS 8
Passaggio 1. Innanzitutto, iniziamo assicurandoci che il tuo sistema sia aggiornato.
sudo dnf update
Passaggio 2. Crea un utente del sistema Redmine.
Creeremo un utente che sarà il proprietario dell'applicazione e gli daremo sudo
temporaneo accesso:
useradd -r -m -d /opt/redmine redmine
Passaggio 3. Installazione del server HTTP Apache.
Per installare il server HTTP Apache su CentOS 8:
dnf install httpd
Quindi, avvia i servizi Apache:
systemctl enable httpd --now
Poi, poiché useremo Apache come nostro server HTTP, aggiungi Apache al gruppo Redmine:
usermod -aG redmine apache
Passaggio 4. Installazione del server MariaDB.
Per installare MariaDB 10.4, devi installare il suo repository YUM.
cat << EOF > /etc/yum.repos.d/mariadb.repo [mariadb] name = MariaDB-10.4 baseurl=http://yum.mariadb.org/10.4/centos8-amd64 gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB gpgcheck=1 EOF
Successivamente, installa la chiave di firma del repository MariaDB YUM:
rpm --import https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
Installa MariaDB usando il seguente comando:
sudo dnf update yum --disablerepo=AppStream install MariaDB-server MariaDB-client
Ora avvia mysqld
servizio utilizzando systemctl
comando come mostrato di seguito:
sudo systemctl start mysqld sudo systemctl enable mariadb
Per impostazione predefinita, MariaDB non è protetto. Puoi proteggere MariaDB usando mysql_secure_installation
sceneggiatura. Dovresti leggere attentamente e sotto ogni passaggio che imposterà una password di root, rimuoverà gli utenti anonimi, non consentirà l'accesso root remoto e rimuoverà il database di test e l'accesso per proteggere MySQL.
mysql_secure_installation
Configuralo in questo modo:
- Set root password? [Y/n] y - Remove anonymous users? [Y/n] y - Disallow root login remotely? [Y/n] y - Remove test database and access to it? [Y/n] y - Reload privilege tables now? [Y/n] y
Avanti, dovremo accedere alla console MariaDB e creare un database per Redmine. Esegui il seguente comando:
mysql -u root -p
Questo ti chiederà una password, quindi inserisci la tua password di root MySQL e premi Invio. Una volta effettuato l'accesso al server del database, devi creare un database per Installazione Redmine:
CREATE DATABASE redmin GRANT ALL PRIVILEGES ON redmine.* TO 'redmine'@'localhost' IDENTIFIED BY 'PASSWORD'; FLUSH PRIVILEGES; \q
Passaggio 5. Scarica e installa Redmine su CentOS.
- Installa le dipendenze richieste
Per prima cosa, installa EPEL e abilita i repository di PowerTools:
dnf install epel-release dnf config-manager --set-enabled PowerTools
Successivamente, procedi con l'installazione delle dipendenze:
dnf install ruby-devel rpm-build libxml2-devel make automake libtool ImageMagick ImageMagick-devel mariadb-devel gcc httpd-devel libcurl-devel gcc-c++
Redmine richiede anche un interprete Ruby che può essere installato eseguendo il comando:
dnf install ruby
Ora esegui il seguente comando come mostrato di seguito per verificare la versione di Ruby:
ruby -v
- Installa Redmine su CentOS
Per prima cosa, scarica l'ultima versione di Redmine, al momento della stesura di questo articolo è la versione 4.0:
wget http://www.redmine.org/releases/redmine-4.0.5.tar.gz -P /tmp
Estrai il tarball di Redmine nella home directory dell'utente di Redmine:
sudo -u redmine tar xzf /tmp/redmine-4.0.5.tar.gz -C /opt/redmine/ --strip-components=1
Successivamente, cambia la directory di lavoro corrente e i file di configurazione di esempio:
su - redmine
Rinomina la configurazione di esempio di Redmine.
cp config/configuration.yml{.example,}
Rinomina il file di configurazione CGI di invio di esempio nella cartella pubblica come mostrato di seguito;
cp public/dispatch.fcgi{.example,}
Rinomina l'esempio nel file di configurazione del database.
cp config/database.yml{.example,}
Successivamente, apri il file di configurazione del database per la modifica e configura:
nano config/database.yml
... production: adapter: mysql2 database: redmin host: localhost username: redmine password: "Your_PassWd" encoding: utf8 ...
Installa le dipendenze Ruby:
su - redmine
Avanti, installa Bundler per la gestione delle dipendenze gem:
gem install bundler
Una volta completata l'installazione del bundler, ora puoi installare le dipendenze gem richieste:
bundle install --without development test --path vendor/bundle
Genera token sessione segreta:
bundle exec rake generate_secret_token
Crea oggetti schema database:
RAILS_ENV=production bundle exec rake db:migrate
Una volta completata la migrazione del database, inserisci i dati di configurazione predefiniti nel database eseguendo:
RAILS_ENV=production REDMINE_LANG=en bundle exec rake redmine:load_default_data
Configura autorizzazioni FileSystem:
for i in tmp tmp/pdf public/plugin_assets; do [ -d $i ] || mkdir -p $i; done chown -R redmine:redmine files log tmp public/plugin_assets chmod -R 755 /opt/redmine/
Passaggio 6. Configura Firewall per Redmine.
Apri la porta 3000/TCP su firewalld. Esegui i comandi seguenti come utente privilegiato:
firewall-cmd --add-port=3000/tcp --permanent firewall-cmd --reload
Passaggio 7. Verifica dell'installazione di Redmine
Puoi testare Redmine usando WEBrick eseguendo il comando seguente:
bundle exec rails server webrick -e production
Poi, ora puoi accedere a Redmine tramite il browser utilizzando l'indirizzo, http://Your-Server-IP:3000/
. Fai clic su Accedi e utilizza le credenziali, Utente:admin e Password:admin per accedere.
Passaggio 8. Configura Apache per Redmine.
Passa all'utente Redmine creato sopra per installare il modulo Phusion Passenger Apache:
su - redmine gem install passenger --no-rdoc --no-ri
Successivamente, installa il modulo Passenger Apache. Sostituisci la versione di Passenger di conseguenza:
passenger-install-apache2-module
Una volta completata la compilazione del modulo, ti viene spiegato come configurare il modulo su Apache:
... Please edit your Apache configuration file, and add these lines: LoadModule passenger_module /opt/redmine/.gem/ruby/gems/passenger-6.0.4/buildout/apache2/mod_passenger.so PassengerRoot /opt/redmine/.gem/ruby/gems/passenger-6.0.4 PassengerDefaultRuby /usr/bin/ruby ...
Prima di poter premere Invio per completare l'installazione e la configurazione del Modulo, apri una nuova sessione di accesso come utente privilegiato e modifica il file di configurazione di Apache:
echo "LoadModule passenger_module /opt/redmine/.gem/ruby/gems/passenger-6.0.4/buildout/apache2/mod_passenger.so" \ > /etc/httpd/conf.modules.d/00-passenger.conf
Quindi, crea la configurazione dell'host virtuale Apache per Redmine con il seguente contenuto:
Listen 3000
<IfModule mod_passenger.c>
PassengerRoot /opt/redmine/.gem/ruby/gems/passenger-6.0.4
PassengerDefaultRuby /usr/bin/ruby
</IfModule>
<VirtualHost *:3000>
ServerName redmine.kifarunix-demo.com
DocumentRoot "/opt/redmine/public"
CustomLog logs/redmine_access.log combined
ErrorLog logs/redmine_error_log
LogLevel warn
<Directory "/opt/redmine/public">
Options Indexes ExecCGI FollowSymLinks
Require all granted
AllowOverride all
</Directory>
</VirtualHost>
Verifica la sintassi della configurazione di Apache:
httpd -t Syntax OK
Una volta completate l'installazione e la configurazione del modulo Apache Passenger, riavvia Apache:
systemctl restart httpd
Passaggio 9. Accesso a Redmine dal browser.
Dovresti essere in grado di accedere all'interfaccia web di Redmine ora:
http://Your-server-IP-or-Hostname:3000
Congratulazioni! Hai installato con successo Redmine. Grazie per aver utilizzato questo tutorial per l'installazione dell'app Web di gestione dei progetti Redmine sui sistemi CentOS 8. Per ulteriore aiuto o informazioni utili, ti consigliamo di controllare il Sito web di Redmine.