Android

Hur man installerar och konfigurerar redmine på centos 7

how to install #Redmine on Centos 7 #Linux (DMS)

how to install #Redmine on Centos 7 #Linux (DMS)

Innehållsförteckning:

Anonim

Redmine är ett av de mest populära verktygen för öppen källkod för projektledning och spårning av problem. Det är korsplattform och korsdatabas och byggd ovanpå Ruby on Rails-ramverket.

Redmine inkluderar stöd för flera projekt, wikis, system för spårning av problem, forum, kalendrar, e-postmeddelanden och mycket mer.

I den här tutorialen kommer vi att täcka stegen som behövs för att installera och konfigurera den senaste versionen av Redmine på en CentOS 7-server med MariaDB som databasback-end och Passenger + Nginx som en Ruby-applikationsserver.

förutsättningar

Se till att du har uppfyllt följande förutsättningar innan du fortsätter med denna handledning:

  • Domännamn som pekar på din server IP-adress. I den här tutorialen kommer vi att använda exempel.com. Loggat in som en användare med sudo-privilegier.

Installera de paket som krävs för att bygga Redmine och Ruby från källan:

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

Skapa MySQL-databas

Redmine stöder MySQL / MariaDB, Microsoft SQL Server, SQLite 3 och PostgreSQL. I den här tutorialen använder vi MariaDB som databasback-end.

Om du inte har MariaDB eller MySQL installerat på din CentOS-server kan du installera den genom att följa dessa instruktioner.

Logga in på MySQL-skalet genom att skriva följande kommando:

sudo mysql

Kör följande SQL-uttalande från MySQL-skalet för att skapa en ny databas:

CREATE DATABASE redmine CHARACTER SET utf8;

Skapa sedan ett MySQL-användarkonto och ge åtkomst till databasen:

GRANT ALL ON redmine.* TO 'redmine'@'localhost' IDENTIFIED BY 'change-with-strong-password'; Se till att du ändrar change-with-strong-password med ett starkt lösenord.

När du är klar, avsluta mysql-skalet genom att skriva:

EXIT;

Installera Passenger och Nginx

Passenger är en snabb och lätt webbapplikationsserver för Ruby, Node.js och Python som kan integreras med Apache och Nginx. Vi kommer att installera Passenger som en Nginx-modul.

Installera EPEL-arkivet och de paket som krävs:

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

Aktivera Phusionpassenger-lagret:

sudo yum-config-manager --add-repo

När förvaret är aktiverat uppdaterar du paketlistan och installerar både Nginx och Passenger med:

sudo yum install nginx passenger passenger-devel

Skapa ny systemanvändare

Skapa en ny användare och grupp, som kommer att köra Redmine-instansen, för enkelhetens namn kommer vi att namnge användaren redmine :

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

Lägg till nginx användaren i den nya användargruppen och ändra /opt/redmine så att Nginx kan komma åt den:

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

Installera Ruby

Versionen av Ruby i CentOS-lagren är ganska föråldrad och stöds inte av Redmine. Vi installerar Ruby med RVM.

Byt till användarens redmine genom att skriva:

sudo su - redmine

Importera GPG-nycklarna och installera RVM:

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

För att börja använda RVM-källa rvm filen:

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

Nu kan vi installera Ruby genom att köra:

rvm install 2.5 rvm --default use 2.5 Om du vill installera Ruby via Rbenv, kolla den här guiden.

Installera Redmine på CentOS

Vid skrivandet av denna artikel är den senaste stabila versionen av Redmine version 4.0.1.

Innan du fortsätter med nästa steg bör du kontrollera nedladdningssidan Redmine för att se om en nyare version är tillgänglig.

Se till att du kör följande steg som redmine användare.

1. Nedladdning av Redmine

Ladda ner Redmine-arkivet med följande curl-kommando:

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

När nedladdningen är klar extraherar arkivet:

tar -xvf redmine.tar.gz

2. Konfigurera Redmine-databas

Kopiera Redmine-databaskonfigurationsfilen:

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

Öppna filen med din textredigerare:

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

Sök efter production och ange MySQL-databasen och användarinformation som vi skapade tidigare:

/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

När du är klar sparar du filen och lämnar redigeraren.

3. Installera Ruby-beroenden

Navigera till redmine-4.0.1 och installera paket och andra Ruby-beroenden:

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

4. Generera nycklar och migrera databasen

Kör följande kommando för att generera nycklar och migrera databasen:

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

Konfigurera Nginx

Byt tillbaka till din sudo-användare:

exit

Öppna din textredigerare och skapa följande Nginx-serverblockfil:

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; } Glöm inte att ersätta example.com med din Redmine-domän.

Innan du startar om Nginx-tjänsten gör du ett test för att vara säker på att det inte finns några syntaxfel:

sudo nginx -t

Om det inte finns några fel, bör utgången se ut så här:

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

Slutligen, starta om Nginx-tjänsten genom att skriva:

sudo systemctl restart nginx

Konfigurera Nginx med SSL

När certifikatet har genererats redigerar domänens Nginx-konfiguration enligt följande:

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; } Glöm inte att ersätta example.com med din Redmine-domän och ange rätt sökväg till SSL-certifikatfilerna. Alla HTTP-förfrågningar kommer att omdirigeras till

Åtkomst till Redmine

Öppna din webbläsare, skriv din domän och förutsatt att installationen lyckas visas en skärm som liknar följande:

När du har ändrat lösenordet omdirigeras du till användarkontosidan.

Slutsats

Du har installerat Redmine på ditt CentOS-system. Du bör nu kontrollera Redmine-dokumentationen och lära dig mer om hur du konfigurerar och använder Redmine.

centos redmine ruby ​​mysql mariadb nginx