
Redmineは、無料のオープンソースプロジェクト管理および問題追跡アプリケーションです。クロスプラットフォームおよびクロスデータベースであり、RubyonRailsフレームワーク上に構築されています。
Redmineには、複数のプロジェクト、Wiki、問題追跡システム、フォーラム、カレンダー、電子メール通知などのサポートが含まれています。
このチュートリアルでは、CentOS 8に最新バージョンのRedmineをインストールして構成する方法について説明します。データベースのバックエンドとしてMariaDBを使用し、RubyアプリケーションサーバーとしてPassenger+Apacheを使用します。
前提条件#
次の前提条件を満たしていることを確認してください。
- サーバーのパブリックIPを指すドメイン名。
- rootまたはsudo権限を持つユーザーとしてログインしています。
MySQLデータベースの作成#
Redmineは、MySQL / MariaDB、Microsoft SQL Server、SQLite 3、およびPostgreSQLをサポートしています。 MariaDBをデータベースのバックエンドとして使用します。
CentOSサーバーにMariaDBまたはMySQLがインストールされていない場合は、次の手順に従ってインストールできます。
次のコマンドを使用してMySQLシェルにログインします。
sudo mysql
MySQLシェル内から、次のSQLステートメントを実行して、新しいデータベースと新しいユーザーを作成し、ユーザーにデータベースへのアクセスを許可します。
必ずCREATE DATABASE redmine CHARACTER SET utf8;
GRANT ALL ON redmine.* TO 'redmine'@'localhost' IDENTIFIED BY 'change-with-strong-password';
change-with-strong-password
を変更してください 強力なパスワードを使用します。 完了したら、MySQLシェルを終了します:
EXIT;
Passenger、Apache、Rubyのインストール#
Passengerisは、ApacheおよびNginxと統合できるRuby、Node.js、およびPython用の高速で軽量のWebアプリケーションサーバーです。 PassengerをApacheモジュールとしてインストールします。
EPELリポジトリを有効にします:
sudo dnf install epel-release
sudo dnf config-manager --enable epel
リポジトリが有効になったら、パッケージリストを更新し、Ruby、Apache、Passengerをインストールします。
sudo dnf install httpd mod_passenger passenger passenger-devel ruby
Apacheサービスを開始し、起動時に開始できるようにします:
sudo systemctl enable httpd --now
ホームディレクトリ/opt/redmine
を使用して、新しいユーザーとグループを作成します Redmineインスタンスを実行します:
sudo useradd -m -U -r -d /opt/redmine redmine
apache
を追加します redmine
へのユーザー グループ化して/opt/redmine
を変更します Apacheがアクセスできるようにするためのディレクトリ権限:
sudo usermod -a -G redmine apache
sudo chmod 750 /opt/redmine
執筆時点で、Redmineの最新の安定バージョンはバージョン4.1.0です。
次の手順に進む前に、Redmineのダウンロードページにアクセスして、新しいバージョンが利用可能かどうかを確認してください。
Redmineのビルドに必要なGCCコンパイラとライブラリをインストールします:
sudo dnf group install "Development Tools"
sudo dnf install zlib-devel curl-devel openssl-devel mariadb-devel ruby-devel
redmine
として次の手順を実行していることを確認してください ユーザー:
sudo su - redmine
1。 Redmineのダウンロード#
curl
を使用してRedmineアーカイブをダウンロードします :
curl -L http://www.redmine.org/releases/redmine-4.1.0.tar.gz -o redmine.tar.gz
ダウンロードが完了したら、アーカイブを抽出します:
tar -xvf redmine.tar.gz
2。 Redmineデータベースの構成#
Redmineのサンプルデータベース構成ファイルをコピーします:
cp /opt/redmine/redmine-4.1.0/config/database.yml.example /opt/redmine/redmine-4.1.0/config/database.yml
テキストエディタでファイルを開きます:
nano /opt/redmine/redmine-4.1.0/config/database.yml
production
を検索します セクションをクリックして、以前に作成したMySQLデータベースとユーザー情報を入力します。
production:
adapter: mysql2
database: redmine
host: localhost
username: redmine
password: "change-with-strong-password"
encoding: utf8mb4
完了したら、ファイルを保存してエディタを終了します。
3。 Ruby依存関係のインストール#
redmine-4.1.0
に切り替えます ディレクトリを作成し、Rubyの依存関係をインストールします:
cd ~/redmine-4.1.0
gem install bundler --no-rdoc --no-ri
bundle install --without development test postgresql sqlite --path vendor/bundle
4。キーの生成とデータベースの移行#
次のコマンドを実行してキーを生成し、データベースを移行します。
bundle exec rake generate_secret_token
RAILS_ENV=production bundle exec rake db:migrate
Apacheの構成#
sudoユーザーに戻り、次のApachevhostfileを作成します。
/etc/httpd/conf.d/example.com.confexit
sudo nano /etc/httpd/conf.d/example.com.conf
<VirtualHost *:80>
ServerName example.com
ServerAlias www.example.com
DocumentRoot /opt/redmine/redmine-4.1.0/public
<Directory /opt/redmine/redmine-4.1.0/public>
Options Indexes ExecCGI FollowSymLinks
Require all granted
AllowOverride all
</Directory>
ErrorLog /var/log/httpd/example.com-error.log
CustomLog /var/log/httpd/example.com-access.log combined
</VirtualHost>
example.comをRedmineドメインに置き換えることを忘れないでください。 次のように入力して、Apacheサービスを再起動します。
sudo systemctl restart httpd
SSLを使用してApacheを設定する#
ドメインに信頼できるSSL証明書がない場合は、次の手順に従って無料のLet’sEncryptSSL証明書を生成できます。
証明書が生成されたら、次のようにApache構成を編集します。
sudo nano /etc/httpd/conf.d/example.com.conf
/etc/httpd/conf.d/example.com.conf <VirtualHost *:80>
ServerName example.com
ServerAlias www.example.com
Redirect permanent / https://example.com/
</VirtualHost>
<VirtualHost *:443>
ServerName example.com
ServerAlias www.example.com
Protocols h2 http/1.1
<If "%{HTTP_HOST} == 'www.example.com'">
Redirect permanent / https://example.com/
</If>
DocumentRoot /opt/redmine/redmine-4.1.0/public
ErrorLog /var/log/httpd/example.com-error.log
CustomLog /var/log/httpd/example.com-access.log combined
SSLEngine On
SSLCertificateFile /etc/letsencrypt/live/example.com/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/example.com/privkey.pem
<Directory /opt/redmine/redmine-4.1.0/public>
Options Indexes ExecCGI FollowSymLinks
Require all granted
AllowOverride all
</Directory>
</VirtualHost>
example.comをRedmineドメインに置き換え、SSL証明書ファイルへの正しいパスを設定することを忘れないでください。すべてのHTTPリクエストはHTTPSにリダイレクトされます。 ブラウザを開き、ドメインを入力すると、インストールが成功すると、次のような画面が表示されます。

Redmineのデフォルトのログインクレデンシャルは次のとおりです。
- ユーザー名:admin
- パスワード:admin
初めてログインすると、以下に示すように、パスワードを変更するように求められます。

パスワードを変更すると、ユーザーアカウントページにリダイレクトされます。
ページにアクセスできない場合は、ファイアウォールがポートApacheポートをブロックしている可能性があります。
次のコマンドを使用して、必要なポートを開きます。
sudo firewall-cmd --permanent --zone=public --add-port=443/tcp
sudo firewall-cmd --permanent --zone=public --add-port=80/tcp
sudo firewall-cmd --reload