Jak zainstalować Redmine na RHEL 8 / Centos 8 Linux
- 1043
- 195
- Maurycy Napierała
Redmine to popularna aplikacja internetowa związana z zarządzaniem projektem open source. Obsługuje bazy danych burmistrza, takie jak MySQL i PostgreSQL jako backend, a także możesz zmienić frontend na Apache z WebRick (zalecany do użytku produkcyjnego) dostarczany z instalacją. W tym artykule zainstalujemy najnowszą Redmine na RHEL 8 / Centos 8, używając PostgreSQL jako backend, ale pozostawimy domyślny Webrick jako frontend, który będzie doskonale służyć naszym testom.
Nie oczekuj, że ten proces będzie łatwy, ani bezbłędny. Nawet wykonując te kroki do litery, pewne błędy będą się zdarzyć, konfiguracja wydaje się poradzić sudo
kroki nieco niespójnie - ale rozwiązania są również uwzględnione, które poprowadzą te błędy.
W tym samouczku nauczysz się:
- Jak zainstalować wymagane pakiety systemu operacyjnego
- Jak skonfigurować bazę danych
- Jak zainstalować aplikację Redmine
- Jak rozpocząć i zalogować się do aplikacji
Zastosowane wymagania i konwencje oprogramowania
Kategoria | Wymagania, konwencje lub wersja oprogramowania |
---|---|
System | RHEL 8 / CENTOS 8 |
Oprogramowanie | Redmine 4.0.3, PostgreSQL 10.5 |
Inny | Uprzywilejowany dostęp do systemu Linux jako root lub za pośrednictwem sudo Komenda. |
Konwencje | # - Wymaga, aby podane polecenia Linux są wykonywane z uprawnieniami root bezpośrednio jako użytkownik root lub za pomocą sudo Komenda$ - Wymaga, aby podane polecenia Linux zostały wykonane jako zwykły użytkownik niepewny |
Jak zainstalować Redmine na Instrukcjach Redhat 8 krok po kroku
Redmine to rubinowa aplikacja. Do instalacji będziemy musieli użyć Rubygemy
I Bundler
, i skompiluj wiele zależności, więc zajmie to trochę czasu. Użyjemy repozytoriów Red Hat dostępne po umożliwieniu zarządzania subskrypcją w celu rozwiązania zależności systemu operacyjnego. Możesz zapoznać się z instalacją instalacyjną PostgreSQL w RHEL8, aby uzyskać ogólnie szczegółową konfigurację bazy danych, w tym artykule omówimy tylko kroki potrzebne do Redmine. Jeśli konfiguracja bazy danych jest nowa, nie zapomnij ukończyć initdb
krok w wspomnianym przewodniku lub uruchomienie bazy danych ulegnie awarii.
- Utworzymy użytkownika, który będzie właścicielem aplikacji, i damy jej tymczasowe
sudo
dostęp. Możemy cofnąć ten dostęp po zakończeniu instalacji.# UserAdd Redmine
Musimy ustawić hasło dla nowego użytkownika, którego użyjemy podczas używania
sudo
:# Passwd Redmine
W rozkładach opartych na RHEL istnieje
koło
Grupa użytkowników, która może korzystaćsudo
Aby uruchomić uprzywilejowane polecenia. Aby sprawdzić, czy ta grupa jest skonfigurowana jakosudoer
, możemyGrep
/etc/sudoers
plik:# grep " %koło" /etc /sudoers %koło all = (all) Wszystkie # %koła all = (all) nopasswd: wszystko
Druga linia z opcją NOPASSWD została skomentowana, co będzie odpowiadające naszym potrzebom. Po powyższej konfiguracji wszystko, co musimy zrobić, to dodać
Redmine
użytkownik dokoło
Grupa:# Usermod -a -g Wheel Redmine
- Aby zainstalować pakiety, które zapewni system operacyjny, użyjemy
DNF
:# DNF Zainstaluj noworodki jądra jądra GCC Postgresql-devel Ruby Ruby-Ruby-devel Rubygems
- Aby uzyskać aplikację, odwiedź oficjalną stronę pobierania (która działa na Redmine). Stąd możemy pobrać sprężone
Tarball
zwget
do systemu docelowego:# wget https: // www.Redmine.org/wydania/redmin-4.0.3.smoła.GZ -O /Opt /Redmine -4.0.3.smoła.GZ
Jak sugeruje powyższe polecenie, zainstalujemy aplikację w ramach
/optować
informator. Przejdziemy do tego katalogu i wyodrębnimy archiwum:# cd /opt # tar -xzf Redmine -4.0.3.smoła.GZ
Opcjonalnie możemy również utworzyć
SymLink
Aby uzyskać łatwiejszy dostęp - w ten sposób nie musimy pamiętać dokładnej wersji:# ln -s /opt /redmin -4.0.3 /Opt /Redmine
Teraz możemy ustawić
Redmine
Użytkownik jako właściciel wyodrębnionej hierarchii katalogu, rekurencyjnie:# Chown -r Redmine: Redmine /Opt /Redmine*
- Aby skonfigurować bazę danych połączenia aplikacji, musimy ją uruchomić, jeśli już nie działa:
# SystemCtl Start PostgreSQL
- Będziemy musieli utworzyć pustą bazę danych, w której aplikacja będzie przechowywać dane. Aby to zrobić, przejdziemy na
Postgres
Użytkownik systemu operacyjnego utworzony domyślnie w instalacji bazy danych:# Su - Postgres
Zalogujemy się do
PSQL
Jako superuser bazy danych:$ PSQL PSQL (10.5) Wpisz „pomoc” o pomoc. Postgres =#
Utworzymy rolę, której będzie używana przez aplikację (zanotuj nazwę użytkownika i hasło):
Postgres =# Utwórz rolę Redmine Login Szyfrowane hasło „R3DM1N3„ Noinherit Wel Cond Upar „Infinity”;
Tworzymy również nową bazę danych z właścicielem utworzonym powyżej:
postgres =# Utwórz bazę danych RMDB z Encoding = "utf8" właściciel = redmine;
Potrzebujemy nazwy użytkownika, hasła, kodowania i nazwy bazy danych w późniejszym kroku.
- Teraz, gdy użytkownik jest skonfigurowany, musimy umożliwić zalogowanie się na serwerze bazy danych. Użytkownik Redmine połączy się lokalnie, więc dodajemy następujący wiersz do
PG_HBA.conf
plik, zlokalizowany domyślnie pod adresem/var/lib/pgsql/data
Domyślnie w rozkładach opartych na RHEL:Host RMDB Redmine 127.0.0.1/32 MD5
Sprawdź swój plik konfiguracyjny dla następujących:
# IPv4 Połączenia lokalne: host All 127.0.0.1/32 Identyfikator
Jeśli masz taki wiersz, skomentuj ją, będzie to sprzeczne z loginem, który planujemy skonfigurować.
- Po tym musimy ponownie uruchomić bazę danych, aby ustawienia mogły obowiązywać:
# Systemctl restart PostgreSQL
- Teraz mamy wszystkie informacje potrzebne do poinformowania aplikacji, gdzie i jak znajdzie bazę danych. Istnieje przykład pliku konfiguracyjnego połączenia bazy danych ze wszystkimi obsługiwanymi bazami danych w
konfigurator
podkładka wyodrębnionego archiwum. Możemy zrobić kopię tego pliku (za pomocąRedmine
użytkownik):$ CP Config/baza danych.yml.Przykładowa konfiguracja/baza danych.yml
Możemy usunąć lub komentować wszystkie przykładowe ustawienia oprócz tych związanych z PostgreSQL lub po prostu utworzyć pusty plik z potrzebną konfiguracją (mniej śmieci pozostanie w pliku w ten sposób). Na koniec
/opt/redmin/config/baza danych.yml
powinien zawierać następujące:
Kopiuj# Postgresql Konfiguracja Produkcja: Adapter: PostgreSQL baza danych: RMDB Host: 127.0.0.1 Nazwa użytkownika: Redmine Hasło: „R3DM1N3”
Zauważ, że użyliśmy informacji o połączeniu z bazą danych, które skonfigurowaliśmy w ostatnich dwóch krokach.
- Aby obniżyć liczbę możliwych problemów, przetestujemy, że możemy zalogować się do
RMDB
baza danych z poświadczeniami podanymi w pliku konfiguracyjnym. Łatwiej jest debugować problemy z połączeniem z PostgreSQL narzędziowym niż jakikolwiek inny:$ PSQL -D RMDB -u Redmine -w Hasło dla użytkownika Redmine: PSQL (10.5) Wpisz „pomoc” o pomoc. rmdb =>
- Tutaj kończy się łatwa część. Teraz zainstalujemy różne pakiety Ruby Redmine, od. Niektóre z nich potrzebują
źródło
dostęp, niektóre zainstalują w imię imieniaRedmine
Użytkownik, a później niektórzy prawdopodobnie będą potrzebować naprawy. Bez żartów. Po pierwsze, będziemy potrzebowaćBundler
:# GEM Instaluj Bundler Fetching: Bundler-2.0.1.Klejnot (100%) z powodzeniem zainstalował Bundler-2.0.1 1 Zainstalowany klejnot
Użyjemy
Bundler
zRedmine
Użytkownik, ale będziemy również potrzebowaćźródło
Aby zainstalować lub naprawićKlejnoty rubinowe
, Dlatego proponuję otworzyć kolejny terminal, przełączyć się naRedmine
użytkownik i przejdź do/Opt/Redmine
katalog, jednocześnie utrzymując otwartą konsolę główną. - Jak
Redmine
użytkownik, rozpoczynamy instalację w/Opt/Redmine
informator:$ instalacja pakietu -bez testu programistycznego rmagick
Wiele zależności zostanie zainstalowanych, a dla niektórych instalator prosi o
sudo
hasło - które jest hasłemRedmine
użytkownik. Wygląda na to, że ta funkcjonalność sudo jest w jakiś sposób trochę zepsuta i może obsłużyć niektóre instalacje pakietów uprzywilejowanych korzeni i nie może się z innymi. Te, które nieudane mogą być zainstalowane na konsoli głównej i powyżejpakiet
Polecenie można ponownie wykonać na konsoli użytkownika Redmine. Co było potrzebne w moim przypadku zźródło
są następujące:# klejnot zainstaluj nokogiri -v '1.10.2 ' - -source' https: // rubygems.org/' # klejnot instaluj pg -v' 1.1.4 ' - -source' https: // rubygems.org/'
Istnieją również pewne pakiety, które mogą pękać podczas instalacji. Można je również naprawić na konsoli korzeniowej. Podobnie jak w przypadku powyższych kroków instalacji opakowania, wyjście
Bundler
Polecenie pokaże, który pakiet ma problemy i jak go rozwiązać. W moim przypadku następujące pakiety wymagały naprawy:# GEM Pristine Nio4r --version 2.3.1 # GEM Pristine RedCarpet --version 3.4.0 # GEM Pristine WebSocket-Driver --version 0.7.0
Należy pamiętać, że jeśli instalujesz inną wersję Redmine, numery wersji pakietów prawdopodobnie będą się różnić. Po ustaleniu wszystkich zepsutych i brakujących pakietów,
pakiet
Polecenie powinno zakończyć bez błędów, z następującym końcem wyjścia:[…] Instalowanie Roadie-Rails 1.3.0 pobieranie Rouge 3.3.0 Instalowanie Rouge 3.3.0 Zakończenie pakietu! 26 Zależności Gemfile, 57 zainstalowanych klejnotów. Klejnoty w tworzeniu, testu i Rmagick nie zostały zainstalowane. Użyj „Informacje o pakiecie [Gemname]”, aby zobaczyć, gdzie jest zainstalowany pakiet klejnot.
- Po zakończeniu trudnej części musimy wygenerować token, który zostanie użyty do kodowania sesji plików cookie:
$ pakiet exec rake generuj_secret_token
- Następnie generujemy obiekty bazy danych potrzebne przez aplikację:
$ Rails_ENV = Polegle Poledle Exec Rake DB: Migruj
Oprócz tworzenia potrzebnych obiektów bazy danych, ten krok wygeneruje wiele wyjściowych, rejestrując wszystkie kroki do konsoli. Zobaczymy, jak wiele wpisów wydaje się podobne do następujących:
[…] == 20180913072918 AddverifyPeertoAuthSources: Migracja ===================== -Zmiana_table (: auth_sources) -> 0.0082S == 20180913072918 AddverifyPeertoAuthsources: migrowano (0.0083s) ============== == 20180923082945 Zmiany Qlitebooleansto0and1: Migracja ==================== == 20180923082945 Zmiany Qlitebooleansto0and1: Migrowo (0.0000s) ==============
Proces ten powinien zakończyć się za kilka sekund.
- Możemy sprawdzić zaludnioną bazę danych za pomocą
PSQL
:rmdb => \ dt lista schematu relacji | Nazwa | Typ | Właściciel --------+-------------------------------------+- -----+--------- Public | ar_internal_metadata | Tabela | Redmine Public | załączniki | Tabela | Redmine Public | Auth_sources | Tabela | Redmine Public | tablice | Tabela | Redmine Public | zmiany | Tabela | Redmine […]
- Ostatnim krokiem instalacji jest ładowanie domyślnych danych do bazy danych. Dostarczając
Redmine_Lang
parametr możemy uratować się przed wszelkimi pytaniami podczas początkowego ładowania.$ Rails_ENV = Production Redmine_Lang = EN Poledle Exec Rake Rake: Load_Default_Data Domyślne dane konfiguracyjne Załadowane dane.
- Instalacja jest kompletna. Możemy uruchomić aplikację:
$ PALINDE EXEC SERWER WEBRICK -E PRODUKCJA => BOTHING WEBRICK => RAILS 5.2.2.1 Aplikacja rozpoczynająca produkcję na http: // 0.0.0.0: 3000 => Uruchom „Server Rails -h”, aby uzyskać więcej opcji uruchamiania [2019-04-14 18:39:12] Info Webrick 1.4.2 [2019-04-14 18:39:12] Info Ruby 2.5.1 (2018-03-29) [x86_64-linux] [2019-04-14 18:39:12] Info Webrick :: httpserver#start: PID = 30062 Port = 3000
- Aplikacja jest teraz uruchomiona i można uzyskać do niej dostęp z przeglądarką. Z powyższego wyjścia możemy zgadnąć, że jest ono dostępne na porcie
3000
, Więc jeśli mamy zaporę na komputerze docelowym, musimy otworzyć ten port, aby zdalnie uzyskać dostęp do usługi:um
- Otwierając przeglądarkę i wskazując ją na adres maszyny i port 3000 (http: // 192.168.1.14: 3000 na poniższym zrzucie ekranu), możemy uzyskać dostęp do internetowego interfejsu naszej nowej instalacji Redmine. Strona logowania Redmine.
Domyślne poświadczenia to
Admin
dla nazwy użytkownika, a także hasła. Po pierwszym logowaniu aplikacja do dobrego gabinetów wyruszy na zmianę hasła dla tego uprzywilejowanego konta. Stamtąd usługa jest nasza, aby wypełnić, konfigurować i cieszyć się. - Po zakończeniu instalacji możemy usunąć
Redmine
użytkownik zkoło
Grupa, eliminując dziurę bezpieczeństwa potrzebną podczas procesu:# gpaswd -d Koło Redmine Usuwanie użytkownika Redmine z grupy # ID Redmine UID = 1008 (Redmine) GID = 1008 (Redmine) Grupy = 1008 (Redmine)
Powiązane samouczki Linux:
- Ubuntu 20.04 Instalacja PostgreSQL
- Ubuntu 22.04 Instalacja PostgreSQL
- Zainstaluj MySQL na Ubuntu 20.04 LTS Linux
- Ubuntu 20.04 WordPress z instalacją Apache
- Jak zainstalować MySQL na Almalinux
- Jak skonfigurować Linux Apache MySQL Python Server
- Rzeczy do zainstalowania na Ubuntu 20.04
- Aplikacje graficzne interfejs użytkownika (GUI) do zarządzania…
- Jak przetrwać dane do PostgreSQL w Javie
- Rzeczy do zainstalowania na Ubuntu 22.04
- « Jak zainstalować Hadoop na RHEL 8 / Centos 8 Linux
- Jak zainstalować RHEL 8 na stacji roboczej VMware »