Android

Sådan installeres og konfigureres redmine på centos 7

Configure HTTPS on Synology NAS Using Let's Encrypt | Synology

Configure HTTPS on Synology NAS Using Let's Encrypt | Synology

Indholdsfortegnelse:

Anonim

Redmine er et af de mest populære open source-projektstyrings- og problemsporingssoftwareværktøjer. Det er tværplatform og krydsdatabase og bygget oven på Ruby on Rails-rammen.

Redmine inkluderer support til flere projekter, wikier, emailsporingssystem, fora, kalendere, e-mail-meddelelser og meget mere.

I denne tutorial vil vi dække de trin, der er nødvendige for at installere og konfigurere den nyeste version af Redmine på en CentOS 7-server ved hjælp af MariaDB som en database-back-end og Passenger + Nginx som en Ruby-applikationsserver.

Forudsætninger

Sørg for, at du har opfyldt følgende forudsætninger, før du fortsætter med denne tutorial:

  • Domænenavn, der peger på din server-offentlige IP. I denne tutorial vil vi bruge example.com Logget ind som en bruger med sudo-privilegier.

Installer de nødvendige pakker til at bygge Redmine og Ruby fra kilden:

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

Oprettelse af MySQL-database

Redmine understøtter MySQL / MariaDB, Microsoft SQL Server, SQLite 3 og PostgreSQL. I denne tutorial bruger vi MariaDB som en database back-end.

Hvis du ikke har MariaDB eller MySQL installeret på din CentOS-server, kan du installere det ved at følge disse instruktioner.

Log ind på MySQL shell ved at skrive følgende kommando:

sudo mysql

Fra MySQL-shell skal du køre følgende SQL-sætning for at oprette en ny database:

CREATE DATABASE redmine CHARACTER SET utf8;

Opret derefter en MySQL-brugerkonto og giver adgang til databasen:

GRANT ALL ON redmine.* TO 'redmine'@'localhost' IDENTIFIED BY 'change-with-strong-password'; Sørg for at ændre change-with-strong-password med en stærk adgangskode.

Når det er afsluttet, skal du afslutte mysql-skalet ved at skrive:

EXIT;

Installation af passager og Nginx

Passenger er en hurtig og let webapplikationsserver til Ruby, Node.js og Python, der kan integreres med Apache og Nginx. Vi installerer Passenger som et Nginx-modul.

Installer EPEL-arkivet og de påkrævede pakker:

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

Aktivér Phusionpassenger-lageret:

sudo yum-config-manager --add-repo

Når depotet er aktiveret, skal du opdatere pakkelisten og installere både Nginx og Passenger med:

sudo yum install nginx passenger passenger-devel

Oprettelse af ny systembruger

Opret en ny bruger og gruppe, der kører Redmine-forekomsten, for nemheds skyld vil vi navngive brugeren redmine :

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

Føj nginx brugeren til den nye brugergruppe og ændre /opt/redmine katalogtilladelser, så Nginx kan få adgang til den:

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

Installation af Ruby

Versionen af ​​Ruby i CentOS-oplagrene er ret forældet og understøttes ikke af Redmine. Vi installerer Ruby ved hjælp af RVM.

Skift til redmine af bruger ved at skrive:

sudo su - redmine

Importer GPG-nøglerne og installer 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

Sådan begynder at bruge RVM-kilde rvm filen:

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

Nu kan vi installere Ruby ved at køre:

rvm install 2.5 rvm --default use 2.5 Hvis du vil installere Ruby via Rbenv, skal du kontrollere denne vejledning.

Installation af Redmine på CentOS

På dette tidspunkt, hvor denne artikel skrives, er den seneste stabile version af Redmine version 4.0.1.

Før du fortsætter med de næste trin, skal du tjekke Redmine-downloadsiden for at se, om en nyere version er tilgængelig.

Sørg for, at du kører følgende trin som redmine bruger.

1. Download Redmine

Download Redmine-arkivet med følgende curl-kommando:

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

Når downloadet er afsluttet, trækker arkivet ud:

tar -xvf redmine.tar.gz

2. Konfiguration af Redmine-database

Kopier Redmine eksempel databasekonfigurationsfil:

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

Åbn filen med din teksteditor:

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

Søg efter production , og indtast MySQL-databasen og brugeroplysninger, vi oprettede tidligere:

/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 det er gjort, skal du gemme filen og lukke redaktøren.

3. Installation af Ruby-afhængigheder

Naviger til redmine-4.0.1 kataloget, og installer bundler og andre Ruby-afhængigheder:

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

4. Generer nøgler og migrer databasen

Kør følgende kommando for at generere nøgler og migrere databasen:

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

Konfiguration af Nginx

Skift tilbage til din sudo-bruger:

exit

Åbn din teksteditor og opret følgende Nginx-serverblokfil:

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; } Glem ikke at erstatte example.com med dit Redmine-domæne.

Inden du genstarter Nginx-tjenesten, skal du foretage en test for at være sikker på, at der ikke er nogen syntaksfejl:

sudo nginx -t

Hvis der ikke er nogen fejl, skal output se sådan ud:

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

Endelig genstart Nginx-tjenesten ved at skrive:

sudo systemctl restart nginx

Konfigurer Nginx med SSL

Når certifikatet er genereret, rediger domænet Nginx-konfigurationen som følger:

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; } Glem ikke at erstatte eksempel.com med dit Redmine-domæne og indstille den rigtige sti til SSL-certifikatfiler. Alle HTTP-anmodninger vil blive omdirigeret til

Adgang til Redmine

Åbn din browser, skriv dit domæne og antager, at installationen er vellykket, vises en skærm, der ligner følgende:

Når du har ændret adgangskoden, vil du blive omdirigeret til siden med brugerkonti.

Konklusion

Du har installeret Redmine på dit CentOS-system. Du skal nu kontrollere Redmine-dokumentationen og lære mere om, hvordan du konfigurerer og bruger Redmine.

centos redmine ruby ​​mysql mariadb nginx