Установка Redmine на CentOS 7 / Installing Redmine on CentOS 7
Spisu treści:
- Wymagania wstępne
- Tworzenie bazy danych MySQL
- Instalowanie programu Passenger i Nginx
- Tworzenie nowego użytkownika systemu
- Instalowanie Ruby
- Instalowanie Redmine na CentOS
- 1. Pobieranie Redmine
- 2. Konfiguracja bazy danych Redmine
- 3. Instalowanie zależności Ruby
- 4. Wygeneruj klucze i przeprowadź migrację bazy danych
- Konfigurowanie Nginx
- Skonfiguruj Nginx z SSL
- Dostęp do Redmine
- Wniosek
Redmine jest jednym z najpopularniejszych narzędzi do zarządzania projektami i śledzenia problemów typu open source. Jest wieloplatformowy i między bazami danych i zbudowany na bazie Ruby on Rails.
Redmine obejmuje obsługę wielu projektów, stron wiki, systemu śledzenia problemów, forów, kalendarzy, powiadomień e-mail i wielu innych.
W tym samouczku omówimy kroki niezbędne do zainstalowania i skonfigurowania najnowszej wersji Redmine na serwerze CentOS 7 przy użyciu MariaDB jako zaplecza bazy danych oraz Passenger + Nginx jako serwer aplikacji Ruby.
Wymagania wstępne
Przed kontynuowaniem tego samouczka upewnij się, że zostały spełnione następujące wymagania wstępne:
- Nazwa domeny wskazująca publiczny adres IP twojego serwera. W tym samouczku użyjemy
example.comZalogowany jako użytkownik z uprawnieniami sudo.
Zainstaluj pakiety wymagane do budowy Redmine i Ruby ze źródła:
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
Tworzenie bazy danych MySQL
Redmine obsługuje MySQL / MariaDB, Microsoft SQL Server, SQLite 3 i PostgreSQL. W tym samouczku wykorzystamy MariaDB jako zaplecze bazy danych.
Jeśli nie masz MariaDB lub MySQL zainstalowanych na serwerze CentOS, możesz go zainstalować, postępując zgodnie z tymi instrukcjami.
Zaloguj się do powłoki MySQL, wpisując następujące polecenie:
sudo mysql
Z poziomu powłoki MySQL uruchom następującą instrukcję SQL, aby utworzyć nową bazę danych:
CREATE DATABASE redmine CHARACTER SET utf8;
Następnie utwórz konto użytkownika MySQL i udziel dostępu do bazy danych:
GRANT ALL ON redmine.* TO 'redmine'@'localhost' IDENTIFIED BY 'change-with-strong-password';
Upewnij się, że zmienisz
change-with-strong-password
z silnym hasłem na silne hasło.
Po zakończeniu wyjdź z powłoki mysql, wpisując:
Instalowanie programu Passenger i Nginx
Passenger to szybki i lekki serwer aplikacji WWW dla Ruby, Node.js i Python, który można zintegrować z Apache i Nginx. Zainstalujemy Passenger jako moduł Nginx.
Zainstaluj repozytorium EPEL i wymagane pakiety:
sudo yum install epel-release yum-utils pygpgme
sudo yum-config-manager --enable epel
Włącz repozytorium Phusionpassenger:
sudo yum-config-manager --add-repo
Po włączeniu repozytorium zaktualizuj listę pakietów i zainstaluj zarówno Nginx, jak i Passenger za pomocą:
sudo yum install nginx passenger passenger-devel
Tworzenie nowego użytkownika systemu
Utwórz nowego użytkownika i grupę, która uruchomi instancję Redmine, dla uproszczenia nazwiemy użytkownika
redmine
:
sudo useradd -m -U -r -d /opt/redmine redmine
Dodaj użytkownika
nginx
do nowej grupy użytkowników i zmień uprawnienia do katalogu
/opt/redmine
aby Nginx mógł uzyskać do niego dostęp:
sudo usermod -a -G redmine nginx
sudo chmod 750 /opt/redmine
Instalowanie Ruby
Wersja Ruby w repozytoriach CentOS jest dość przestarzała i nie jest obsługiwana przez Redmine. Zainstalujemy Ruby przy użyciu RVM.
Przejdź do użytkownika
redmine
, wpisując:
sudo su - redmine
Zaimportuj klucze GPG i zainstaluj RVM:
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
Aby rozpocząć korzystanie ze źródła RVM, plik
rvm
:
source /opt/redmine/.rvm/scripts/rvm
Teraz możemy zainstalować Ruby, uruchamiając:
rvm install 2.5
rvm --default use 2.5
Jeśli chcesz zainstalować Ruby przez Rbenv, sprawdź ten przewodnik.
Instalowanie Redmine na CentOS
W chwili pisania tego artykułu najnowszą stabilną wersją Redmine jest wersja 4.0.1.
Przed kontynuowaniem kolejnych kroków powinieneś sprawdzić stronę pobierania Redmine, aby sprawdzić, czy dostępna jest nowsza wersja.
Upewnij się, że
redmine
następujące kroki jako użytkownik
redmine
.
1. Pobieranie Redmine
Pobierz archiwum Redmine za pomocą następującego polecenia curl:
curl -L http://www.redmine.org/releases/redmine-4.0.1.tar.gz -o redmine.tar.gz
Po zakończeniu pobierania rozpakuj archiwum:
2. Konfiguracja bazy danych Redmine
Skopiuj przykładowy plik konfiguracyjny bazy danych Redmine:
cp /opt/redmine/redmine-4.0.1/config/database.yml.example /opt/redmine/redmine-4.0.1/config/database.yml
Otwórz plik za pomocą edytora tekstu:
nano /opt/redmine/redmine-4.0.1/config/database.yml
Wyszukaj sekcję
production
i wprowadź bazę danych MySQL oraz informacje o użytkowniku, które wcześniej utworzyliśmy:
production: adapter: mysql2 database: redmine host: localhost username: redmine password: "change-with-strong-password" encoding: utf8
Po zakończeniu zapisz plik i zamknij edytor.
3. Instalowanie zależności Ruby
Przejdź do katalogu
redmine-4.0.1
i zainstaluj bundler i inne zależności Ruby:
cd ~/redmine-4.0.1
gem install bundler --no-rdoc --no-ri
bundle install --without development test postgresql sqlite
gem install bundler --no-rdoc --no-ri
bundle install --without development test postgresql sqlite
4. Wygeneruj klucze i przeprowadź migrację bazy danych
Uruchom następujące polecenie, aby wygenerować klucze i przeprowadzić migrację bazy danych:
bundle exec rake generate_secret_token
RAILS_ENV=production bundle exec rake db:migrate
Konfigurowanie Nginx
Wróć do użytkownika sudo:
exit
Otwórz edytor tekstu i utwórz następujący plik bloku serwera 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; }
Nie zapomnij zastąpić example.com swoją domeną Redmine.
Przed ponownym uruchomieniem usługi Nginx wykonaj test, aby upewnić się, że nie występują błędy składniowe:
sudo nginx -t
Jeśli nie ma błędów, wynik powinien wyglądać następująco:
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok nginx: configuration file /etc/nginx/nginx.conf test is successful
Na koniec zrestartuj usługę Nginx, wpisując:
Skonfiguruj Nginx z SSL
Po wygenerowaniu certyfikatu edytuj konfigurację domeny Nginx w następujący sposób:
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; }
Nie zapomnij zastąpić example.com domeną Redmine i ustawić prawidłową ścieżkę do plików certyfikatów SSL. Wszystkie żądania HTTP zostaną przekierowane do
Dostęp do Redmine
Otwórz przeglądarkę, wpisz domenę i zakładając, że instalacja zakończy się powodzeniem, pojawi się ekran podobny do następującego:


Po zmianie hasła nastąpi przekierowanie na stronę konta użytkownika.
Wniosek
Pomyślnie zainstalowałeś Redmine w swoim systemie CentOS. Powinieneś teraz sprawdzić dokumentację Redmine i dowiedzieć się więcej o tym, jak skonfigurować i korzystać z Redmine.
centos redmine ruby mysql mariadb nginxJak zainstalować i skonfigurować serwer NFS na Centos 8
W tym samouczku wykonasz kroki niezbędne do skonfigurowania serwera NFSv4 na CentOS 8. Pokażemy także, jak zamontować system plików NFS na kliencie.
Jak zainstalować i skonfigurować Redmine na Debianie 9
Redmine to darmowa i otwarta aplikacja do zarządzania projektami i śledzenia problemów. W tym samouczku pokażemy, jak zainstalować i skonfigurować najnowszą wersję Redmine na serwerze Debian 9 przy użyciu MySQL jako zaplecza bazy danych oraz Passenger + Nginx jako serwer aplikacji Ruby.
Jak zainstalować i skonfigurować Redmine na Ubuntu 18.04
Redmine jest jednym z najpopularniejszych narzędzi do zarządzania projektami i śledzenia problemów typu open source. W tym samouczku opisano, jak zainstalować i skonfigurować najnowszą wersję Redmine na serwerze Ubuntu 18.04.







