GNU/Linux >> Znalost Linux >  >> Cent OS

Jak nainstalovat a nakonfigurovat Redmine na CentOS 7

Redmine je jedním z nejpopulárnějších softwarových nástrojů pro správu projektů a sledování problémů s otevřeným zdrojovým kódem. Je to multiplatformní a multidatabáze a je postavena na platformě Ruby on Rails.

Redmine zahrnuje podporu pro více projektů, wiki, systém sledování problémů, fóra, kalendáře, e-mailová upozornění a mnoho dalšího.

V tomto tutoriálu probereme kroky potřebné k instalaci a konfiguraci nejnovější verze Redmine na serveru CentOS 7 pomocí MariaDB jako databázového back-endu a Passenger + Nginx jako aplikačního serveru Ruby.

Předpoklady #

Než budete pokračovat v tomto kurzu, ujistěte se, že jste splnili následující předpoklady:

  • Název domény odkazující na veřejnou IP adresu vašeho serveru. V tomto tutoriálu budeme používat example.com .
  • Přihlášeni jako uživatel s právy sudo.

Nainstalujte balíčky potřebné pro sestavení Redmine a Ruby ze zdroje:

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-develsudo yum install mariadb-devel zlib libyaml-devel bzip2 iconv-devel ImageMagick ImageMagick-devel

Vytváření databáze MySQL #

Redmine podporuje MySQL/MariaDB, Microsoft SQL Server, SQLite 3 a PostgreSQL. V tomto tutoriálu použijeme MariaDB jako back-end databáze.

Pokud na serveru CentOS nemáte nainstalovanou MariaDB nebo MySQL, můžete je nainstalovat podle těchto pokynů.

Přihlaste se do prostředí MySQL zadáním následujícího příkazu:

sudo mysql

Z prostředí MySQL spusťte následující příkaz SQL a vytvořte novou databázi:

CREATE DATABASE redmine CHARACTER SET utf8;

Dále vytvořte uživatelský účet MySQL a udělte přístup k databázi:

GRANT ALL ON redmine.* TO 'redmine'@'localhost' IDENTIFIED BY 'change-with-strong-password';
Ujistěte se, že jste změnili change-with-strong-password se silným heslem.

Po dokončení ukončete prostředí mysql zadáním:

EXIT;

Instalace Passenger a Nginx #

Passengeris je rychlý a lehký webový aplikační server pro Ruby, Node.js a Python, který lze integrovat s Apacheand Nginx. Passenger nainstalujeme jako modul Nginx.

Nainstalujte úložiště EPEL a požadované balíčky:

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

Povolte úložiště Phusionpassenger:

sudo yum-config-manager --add-repo https://oss-binaries.phusionpassenger.com/yum/definitions/el-passenger.repo

Jakmile je úložiště povoleno, aktualizujte seznam balíčků a nainstalujte Nginx i Passenger pomocí:

sudo yum install nginx passenger passenger-devel

Vytvoření nového systémového uživatele #

Vytvořte nového uživatele a skupinu, která bude spouštět instanci Redmine, pro jednoduchost pojmenujeme uživatele redmine :

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

Přidejte nginx uživatele do nové skupiny uživatelů a změňte /opt/redmine oprávnění k adresáři, aby k němu Nginx měl přístup:

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

Instalace Ruby #

Verze Ruby v repozitářích CentOS je dost zastaralá a Redmine ji nepodporuje. Ruby nainstalujeme pomocí RVM.

Přepněte na uživateleredmine zadáním:

sudo su - redmine

Importujte klíče GPG a nainstalujte RVM:

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

Chcete-li začít používat RVM sourcethe rvm soubor:

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

Nyní můžeme nainstalovat Ruby spuštěním:

rvm install 2.5rvm --default use 2.5
Pokud chcete nainstalovat Ruby přes Rbenv, podívejte se na tuto příručku.

Instalace Redmine na CentOS #

V době psaní tohoto článku je nejnovější stabilní verze Redmine verze 4.0.1.

Než budete pokračovat dalšími kroky, měli byste se podívat na stránku stahování Redmine, abyste zjistili, zda není k dispozici novější verze.

Ujistěte se, že spouštíte následující kroky jako redmine uživatel.

1. Stahování Redmine #

Stáhněte si archiv Redmine pomocí následujícího příkazu curl:

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

Po dokončení stahování rozbalte archiv:

tar -xvf redmine.tar.gz

2. Konfigurace databáze Redmine #

Zkopírujte ukázkový konfigurační soubor databáze Redmine:

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

Otevřete soubor pomocí textového editoru:

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

Vyhledejte production a zadejte databázi MySQL a informace o uživateli, které jsme vytvořili dříve:

/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

Po dokončení uložte soubor a ukončete editor.

3. Instalace závislostí Ruby #

Přejděte na redmine-4.0.1 adresář a nainstalovat bundler a další závislosti Ruby:

cd ~/redmine-4.0.1gem install bundler --no-rdoc --no-ribundle install --without development test postgresql sqlite

4. Generovat klíče a migrovat databázi #

Spusťte následující příkaz pro vygenerování klíčů a migraci databáze:

bundle exec rake generate_secret_tokenRAILS_ENV=production bundle exec rake db:migrate

Konfigurace Nginx #

Přepněte zpět na uživatele sudo:

exit

Otevřete textový editor a vytvořte následující blokový soubor serveru 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;
}
Nezapomeňte nahradit example.com svou doménou Redmine.

Před restartováním služby Nginx proveďte test, abyste se ujistili, že neexistují žádné syntaktické chyby:

sudo nginx -t

Pokud nejsou žádné chyby, výstup by měl vypadat takto:

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

Nakonec restartujte službu Nginx zadáním:

sudo systemctl restart nginx

Konfigurace Nginx pomocí SSL #

Pokud pro svou doménu nemáte důvěryhodný certifikát SSL, můžete si podle těchto pokynů vygenerovat bezplatný certifikát Let’s Encrypt SSL.

Po vygenerování certifikátu upravte konfiguraci domény Nginx následovně:

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;
}
Nezapomeňte nahradit example.com svou doménou Redmine a nastavit správnou cestu k souborům certifikátu SSL. Všechny požadavky HTTP budou přesměrovány na HTTPS.

Přístup k Redmine #

Otevřete prohlížeč, zadejte svou doménu a za předpokladu úspěšné instalace se zobrazí obrazovka podobná následující:

Výchozí přihlašovací údaje pro Redmine jsou:

  • Uživatelské jméno:admin
  • Heslo:admin

Při prvním přihlášení budete vyzváni ke změně hesla, jak je uvedeno níže:

Jakmile změníte heslo, budete přesměrováni na stránku uživatelského účtu.


Cent OS
  1. Jak nainstalovat a nakonfigurovat Nginx na CentOS 7

  2. Jak nainstalovat a nakonfigurovat Redis na CentOS 7

  3. Jak nainstalovat a nakonfigurovat CyberPanel na CentOS 8

  1. Jak nainstalovat a nakonfigurovat GitLab na CentOS 7

  2. Jak nainstalovat a nakonfigurovat Redis na CentOS 8

  3. Jak nainstalovat a nakonfigurovat Redmine na CentOS 8

  1. Jak nainstalovat a nakonfigurovat Sambu na CentOS 8

  2. Jak nainstalovat a nakonfigurovat GitLab CE na CentOS 7

  3. Jak nainstalovat a nakonfigurovat Zabbix na CentOS 7