GNU/Linux >> LINUX-Kenntnisse >  >> Cent OS

So installieren Sie Redmine 3 mit Nginx unter CentOS 7

Redmine ist eine Open-Source-Webanwendung für Projektmanagement und Problemverfolgung. Redmine basiert auf dem Ruby on Rails Framework, bietet plattform- und datenbankübergreifende Unterstützung und wird mit Übersetzungen für 42 Sprachen ausgeliefert. Die Software ermöglicht es Ihnen, mehrere Projekte zu verfolgen, sie integriert Nachrichten-, Dokumenten- und Dateiverwaltung und ein Support-Wiki pro Projekt. Benutzerkonten können anhand eines LDAP-Verzeichnisses authentifiziert werden, und Software von Drittanbietern kann über eine REST-API verbunden werden.

In diesem Tutorial installieren wir Redmine 3.2 mit Nginx als Webserver und MySQL als Datenbankserver auf einem CentOS 7-Betriebssystem (64 Bit).

Voraussetzung

  • CentOS 7 - 64-Bit.
  • Root-Rechte.

Schritt 1 - Installieren Sie die Redmine-Abhängigkeiten

Redmine hat viele Abhängigkeiten, die wir zuerst installieren werden. Melden Sie sich als Root-Benutzer bei Ihrem CentOS 7-Server an:

ssh [email protected]

Installieren Sie alle für Redmine erforderlichen Abhängigkeiten und die für Ruby und rvm erforderlichen Pakete mit dem yum-Befehl unten:

yum install zlib-devel curl-devel openssl-devel httpd-devel apr-devel apr-util-devel mysql-devel ftp wget ImageMagick-devel gcc-c++ patch readline readline-devel zlib libyaml-devel libffi-devel make bzip2 autoconf automake libtool bison iconv-devel subversion

Die Installation fragt nach einem MySQL-Passwort. Geben Sie Ihr neues MySQL-Root-Passwort ein, wenn Sie dazu aufgefordert werden.

Schritt 2 – Ruby und RVM installieren

In diesem Schritt werden wir rvm (neueste Version) und ruby ​​2.2 installieren. Redmine 3.2 unterstützt die Ruby-Version 2.2. RVM (Ruby Version Manager) ist ein Befehlszeilentool, mit dem Sie mehrere Ruby-Umgebungen auf demselben Server installieren, verwalten und damit arbeiten können.

gpg2 --keyserver hkp://keys.gnupg.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3
curl -L https://get.rvm.io | bash -s stable --ruby=2.2.5

Wenn die Installation abgeschlossen ist, müssen wir RVM neu laden und es zum automatischen Neuladen zur .bashrc-Datei hinzufügen:

source /usr/local/rvm/scripts/rvm
echo '[[ -s "/usr/local/rvm/scripts/rvm" ]] && source "/usr/local/rvm/scripts/rvm"' >> ~/.bashrc

Laden Sie die .bashrc-Datei neu und überprüfen Sie die Ruby- und RVM-Version.

source ~/.bashrc
ruby -v
rvm -v

Schritt 3 – Konfigurieren Sie die Datenbank für Redmine

In diesem Schritt installieren wir das mysql-server-Paket aus dem offiziellen MySQL-Repository.

Fügen Sie das Oracle MySQL-Repository hinzu und überprüfen Sie die Repository-Liste.

rpm -Uvh https://dev.mysql.com/get/mysql57-community-release-el7-9.noarch.rpm
yum repolist

um sicherzustellen, dass das MySQL-Server-Repository erfolgreich hinzugefügt wurde.

Installieren Sie den MySQL-Server mit diesem yum-Befehl.

yum install mysql-server

Wenn die Installation abgeschlossen ist, starten Sie den mysqld-Dienst und konfigurieren Sie das MySQL-Root-Passwort.

systemctl start mysqld

MySQL-Server wurde gestartet. Holen Sie sich jetzt das temporäre Root-Passwort für den MySQL-Server mit dem folgenden grep-Befehl:

grep 'temporary password' /var/log/mysqld.log

Sie sehen ein ähnliches Ergebnis wie dieses:

2016-10-31T23:06:50.974555Z 1 [Note] A temporary password is generated for [email protected]: />y.)uWui8j*

Wir wissen also, dass das Root-Passwort für den MySQL-Server lautet:/>y.)uWui8j*

Jetzt werden wir ein neues Root-Passwort für den MySQL-Server festlegen. Melden Sie sich mit dem Benutzer root und dem generierten Passwort bei der MySQL-Shell an:

mysql -u root -p
GENERATED PASSWORD: />y.)uWui8j*

Legen Sie mit der Mysql-Abfrage unten ein neues Root-Benutzerpasswort fest:

ALTER USER 'root'@'localhost' IDENTIFIED BY '[email protected]!';

Erstellen Sie als Nächstes eine neue Datenbank namens „redmine“ und erstellen Sie einen neuen Benutzer „redmine“ mit dem Passwort „redmine“ (verwenden Sie hier ein sicheres Passwort auf Ihrem Server!). Gewähren Sie dem Benutzer dann alle Privilegien für die 'redmine'-Datenbank.

create database redmine;
create user [email protected] identified by '[email protected]!';
grant all privileges on redmine.* to [email protected] identified by '[email protected]!';
flush privileges;
exit

Datenbank und Benutzer wurden erstellt.

Schritt 4 – Phusion Passenger und Nginx installieren

Phusion Passenger ist ein Webanwendungsserver, der zusammen mit Apache und Nginx verwendet werden kann. Es unterstützt mehrere Sprachen:Ruby, Python und Nodejs. Es ist für uns einfach, schnell, kann mehr Datenverkehr verarbeiten und bietet Sicherheitsverbesserungen.

In diesem Kapitel installieren wir den Phusion Passenger und integrieren ihn in unseren nginx-Webserver. Installieren Sie Passenger mit dem Gem-Befehl unten und führen Sie dann den Befehl Passenger-nginx-module.

aus
gem install passenger --no-ri --no-rdoc
passenger-install-nginx-module

Der Befehl fragt Sie, welche Programmiersprache verwendet werden soll, wählen Sie Ruby und Python .

Sie werden nach der nginx-Installation gefragt; Wählen Sie "Ja:Nginx für mich herunterladen, kompilieren und installieren. (empfohlen) ".

Sie werden nach dem nginx-Installationsverzeichnis gefragt, verwenden Sie die Standardeinstellung '/opt/nginx/' , drücken Sie einfach "Enter ".

Schritt 5 – Nginx konfigurieren

Wechseln Sie nach Abschluss der nginx-Installation in das Installationsverzeichnis und bearbeiten Sie die Datei nginx.conf mit einem Editor.

cd /opt/nginx/
cd conf/
vim nginx.conf

Fügen Sie die Konfiguration unten in Zeile 24 ein:

include vhost/*.conf;

Speichern Sie die Datei und verlassen Sie den Editor.

Erstellen Sie ein neues „vhost“-Verzeichnis für die Konfiguration des virtuellen Hosts.

mkdir -p /opt/nginx/conf/vhost

Gehen Sie in das vhost-Verzeichnis und erstellen Sie die Redmine-Virtualhost-Konfiguration mit vim:

cd /opt/nginx/conf/vhost/
vim redmine.conf

Fügen Sie die Konfiguration des virtuellen Hosts unten ein:

    server {
        listen       80;
        server_name  www.redmine.me;

        root /var/www/redmine/public;
        passenger_enabled on;
        client_max_body_size      10m; # Max attachemnt size

        # redirect server error pages to the static page /50x.html
        #
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
    }

Speichern Sie die Datei.

Ubuntu 16.04 verwendet systemd als Init-System. Als nächstes konfigurieren wir nginx für systemd. Gehen Sie in das systemd-Verzeichnis und erstellen Sie eine neue Dienstdatei mit dem Namen „nginx.service“.

cd /lib/systemd/system/
vim nginx.service

Fügen Sie das nginx-Skript für systemd unten ein:

[Unit]
Description=The NGINX HTTP and reverse proxy server
After=syslog.target network.target remote-fs.target nss-lookup.target

[Service]
Type=forking
PIDFile=/opt/nginx/logs/nginx.pid
ExecStartPre=/opt/nginx/sbin/nginx -t
ExecStart=/opt/nginx/sbin/nginx
ExecReload=/bin/kill -s HUP $MAINPID
ExecStop=/bin/kill -s QUIT $MAINPID
PrivateTmp=true

[Install]
WantedBy=multi-user.target

Speichern und beenden.

Laden Sie den systemd-Dienst neu und versuchen Sie, nginx mit dem systemctl-Befehl zu starten:

systemctl daemon-reload
systemctl start nginx

Wenn Sie nginx überprüfen möchten, überprüfen Sie den offenen Port 80:

netstat -plntu | grep nginx

Das Ergebnis sollte so aussehen:

tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN      4871/nginx

Schritt 6 - Redmine installieren

Erstellen Sie ein neues Verzeichnis für die Redmine-Installation. Ich werde hier das Verzeichnis „/var/www/“ verwenden.

mkdir -p /var/www/

Gehen Sie in das Verzeichnis ‚/var/www/‘ und laden Sie Redmine mit dem svn-Befehl herunter:

cd /var/www/
svn co https://svn.redmine.org/redmine/branches/3.2-stable redmine

Wechseln Sie in das Redmine-Verzeichnis und kopieren Sie die Konfigurationsdatei und die Datenbankkonfigurationsdatei:

cd redmine
cp config/configuration.yml.example config/configuration.yml
cp config/database.yml.example config/database.yml

Bearbeiten Sie die Datei database.yml mit vim:

vim config/database.yml

Geben Sie in der Produktionsabschnittszeile den Datenbanknamen, den Benutzer und das Passwort ein:

production:
  adapter: mysql2
  database: redmine
  host: localhost
  username: redmine
  password: "[email protected]!"
  encoding: utf8

Speichern Sie die Datei.

Erstellen Sie im Redmine-Verzeichnis einige neue Verzeichnisse und ändern Sie den Eigentümer in Benutzer und Gruppe niemand:

mkdir -p tmp tmp/pdf public/plugin_assets
sudo chown -R nobody:nobody files log tmp public/plugin_assets
sudo chmod -R 775 files log tmp public/plugin_assets

Installieren Sie die Bundler- und Gem-Abhängigkeiten für Redmine:

gem install bundler
bundle install --without development test

Generieren Sie das geheime Token und dann die Datenbank:

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

Starten Sie nginx neu und besuchen Sie den Redmine-Domänennamen mit einem Webbrowser:

systemctl restart nginx

Besuchen Sie die Redmine-Installation, meine ist:www.redmine.co

Melden Sie sich auf der Admin-Seite an:www.redmine.co/login

Der Standardbenutzer und das Passwort sind „admin“.

Erstellen Sie ein neues Beispielprojekt.

Beispielprojektseite.

Die Installation von Redmine mit Nginx und MySQL auf CentOS 7 war erfolgreich.

Schlussfolgerung

Redmine ist eine webbasierte Anwendung für Projektmanagement und Problemverfolgung. Redmine ist plattformübergreifend, sodass wir es unter Windows, Linux oder Mac OS ausführen können. Redmine unterstützt viele Datenbanken wie MySQL, PostgreSQL, Microsoft SQL Server und SQLite. Redmine ist einfach zu installieren und zu konfigurieren, wir können Apache oder Nginx als Webserver verwenden. Redmine ist sehr leistungsfähig und hat viele Funktionen wie Mehrsprachenunterstützung, Dateiverwaltung, Wiki und eine REST-API. Redmine ist eine der besten kostenlosen Lösungen, wenn Sie Ihr eigenes Projektmanagement mit Problemverfolgung aufbauen möchten.


Cent OS
  1. So installieren Sie MySQL unter CentOS 8

  2. So installieren Sie phpMyAdmin mit Nginx unter CentOS 7 / RHEL 7

  3. So installieren Sie Redmine auf CentOS 7

  4. So installieren Sie Redmine auf CentOS 8

  5. So installieren Sie MySQL 5.6 unter CentOS 6.x

So installieren Sie phpMyAdmin mit Nginx unter CentOS 8 / RHEL 8

So installieren Sie Redmine auf CentOS 8

So installieren Sie Nginx mit ngx_pagespeed unter CentOS

So installieren Sie Nginx mit PHP-FastCGI unter CentOS 6

So installieren Sie Magento mit Nginx unter CentOS 7

So installieren Sie Laravel mit Nginx unter CentOS 8