Jak zainstalować Redmine na RHEL 8 / Centos 8 Linux

Jak zainstalować Redmine na RHEL 8 / Centos 8 Linux

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
Strona konfiguracji Redmine na RHEL 8.

Zastosowane wymagania i konwencje oprogramowania

Wymagania oprogramowania i konwencje linii poleceń Linux
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.

  1. 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 jako sudoer, możemy Grep /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 do koło Grupa:

    # Usermod -a -g Wheel Redmine
  2. 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


  3. Aby uzyskać aplikację, odwiedź oficjalną stronę pobierania (która działa na Redmine). Stąd możemy pobrać sprężone Tarball z wget 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*
  4. Aby skonfigurować bazę danych połączenia aplikacji, musimy ją uruchomić, jeśli już nie działa:
    # SystemCtl Start PostgreSQL
  5. 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.

  6. 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ć.

  7. Po tym musimy ponownie uruchomić bazę danych, aby ustawienia mogły obowiązywać:
    # Systemctl restart PostgreSQL
  8. 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:

    # Postgresql Konfiguracja Produkcja: Adapter: PostgreSQL baza danych: RMDB Host: 127.0.0.1 Nazwa użytkownika: Redmine Hasło: „R3DM1N3”
    Kopiuj

    Zauważ, że użyliśmy informacji o połączeniu z bazą danych, które skonfigurowaliśmy w ostatnich dwóch krokach.



  9. 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 =>
  10. 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ę imienia Redmine 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 z Redmine 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ę na Redmine użytkownik i przejdź do /Opt/Redmine katalog, jednocześnie utrzymując otwartą konsolę główną.

  11. 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łem Redmine 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żej pakiet 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.
  12. 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
  13. 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.

  14. 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 […]


  15. 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.
  16. 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
  17. 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
  18. 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ę.

  19. Po zakończeniu instalacji możemy usunąć Redmine użytkownik z koł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