Redmineは、オープンソースのプロジェクト管理および問題追跡ツールです。これにより、ユーザーは複数のプロジェクトとサブプロジェクトを管理できます。また、タイムトラッキング、ロールベースアクセス、プロジェクトとそのタイムラインの視覚的表現もサポートしています。
このチュートリアルでは、CentOS8にRedmineをインストールします。
MariaDBをインストールします:
次のコマンドを使用して、mariaDBとその依存関係をインストールします。
dnf install @mariadb

mariaDBを有効にして起動します。
systemctl enable --now mariadb
systemctl status mariadb

ルートパスワードが設定されていないため、MariaDBおよびその他のセキュリティチェックのルートパスワードを設定します。次のコマンドを使用します。
mysql_secure_installation
MariaDBのrootパスワードを設定するように求めるプロンプトが表示されます。これを行うと、スクリプトは匿名ユーザーを削除し、rootユーザーのアクセスを制限し、テストデータベースを削除するように要求します。すべてのオプションに「Y」(はい)と答える必要があります。

mysqlにログインし、redmineのデータベースを作成して、ユーザーがデータベースにアクセスできるようにします。
mysql -u root -p
上で設定したパスワードを入力してください。
CREATE DATABASE redmine CHARACTER SET utf8;
GRANT ALL ON redmine.* TO 'redmine'@'localhost' IDENTIFIED BY 'change-with-strong-password';
quit;
必ず「change-with-strong-password」を選択したパスワードに変更してください。

Passenger、Apache、Rubyのインストール:
Passengerは、ruby用の高速Webベースのアプリケーションサーバーです。 Apacheと統合します。
Apacheモジュールとしてインストールします。
dnf install epel-release
dnf config-manager --enable epel
dnf install httpd mod_passenger passenger passenger-devel ruby

Apacheサービスを開始して有効にします。
systemctl start httpd.service
systemctl enable httpd.service
systemctl status httpd.service

ホームディレクトリ/opt/ redmineを使用して新しいユーザーとグループを作成し、redmineインスタンスを実行します。
useradd -m -U -r -d /opt/redmine redmine
apacheユーザーをredmineディレクトリに追加し、apacheにアクセス許可を与えます。
usermod -a -G redmine apache
chmod 750 /opt/redmine
Redmineのインストール:
redmineをインストールする前に、GCCコンパイラとライブラリをインストールしてください。redmineで必要になるためです。
dnf group install "Development Tools"
dnf install zlib-devel curl-devel openssl-devel mariadb-devel ruby-devel

このユーザーと一緒にredmineをインストールするので、次にredmineユーザーに切り替えます。
su - redmine
curlを使用してWebからファイルをダウンロードするため、curlを使用して最新のRedmineバージョンをダウンロードします。
curl -L https://www.redmine.org/releases/redmine-4.2.3.tar.gz -o redmine.tar.gz

アーカイブファイルを抽出します。
tar -xvf redmine.tar.gz
Redmineデータベースの構成:
redmineデータベース構成ファイルをコピーします。
cp /opt/redmine/redmine-4.2.3/config/database.yml.example /opt/redmine/redmine-4.2.3/config/database.yml
nanoエディターでファイルを開きます。 nanoエディターを使用しているのは、操作が簡単で、任意のエディターを使用できるためです。
nano /opt/redmine/redmine-4.2.3/config/database.yml
redmineはデータベースへの接続にMYSQLデータベース情報を使用するため、「本番」セクションにMYSQLデータベース情報を入力します。
production:
adapter: mysql2
database: redmine
host: localhost
username: root
password: "change-with-strong-password"
# Use "utf8" instead of "utfmb4" for MySQL prior to 5.7.7
encoding: utf8mb4
「change-with-strong-password」を使用してパスワードを変更します。
ファイルを保存して終了します。
Redmineはrubyを使用するため、redmineディレクトリに切り替えてrubyの依存関係をインストールします。
cd redmine-4.2.3/
gem install bundler --no-rdoc --no-ri
bundle install --without development test postgresql sqlite --path vendor/bundle

次のコマンドを実行して、キーを生成し、データベースを移行します。
bundle exec rake generate_secret_token
RAILS_ENV=production bundle exec rake db:migrate
RAILS_ENV=production REDMINE_LANG=en bundle exec rake redmine:load_default_data

Apacheの構成:
ここで、root / sudoユーザーに戻ってapacheを構成します。これは、apacheをredmineユーザーで構成できないためです。
nano /etc/httpd/conf.d/redmine.conf
次の行を追加します:
<VirtualHost *:80>
ServerName 192.168.189.128
ServerAlias www.192.168.189.128.com
DocumentRoot /opt/redmine/redmine-4.2.3/public
<Directory /opt/redmine/redmine-4.2.3/public>
Options Indexes ExecCGI FollowSymLinks
Require all granted
AllowOverride all
</Directory>
ErrorLog /var/log/httpd/localhost-error.log
CustomLog /var/log/httpd/localhost-access.log combined
</VirtualHost>

apacheを再起動して、構成を適用します。
systemctl restart httpd.service
次に、次のコマンドを実行してRedmineを起動します。
bundle exec rails server webrick -e production
ブラウザを開き、IP:3000と入力します。私の場合はhttp://192.168.189.128:3000で、次の画面が表示されます。
デフォルトのユーザー名とパスワードはadminです。

ログインすると、新しいパスワードを設定するようにリダイレクトされます。

選択に応じてパスワードを設定します。
パスワードを設定したら、アカウント設定を行います。

これで、プロジェクトにredmineを使用できます。
