Redmineは、オープンソースのプロジェクト管理および問題追跡アプリケーションです。これは、Ruby onRailsフレームワーク上に構築されたクロスプラットフォームおよびクロスデータベースアプリケーションです。
Redmineには、マルチプロジェクトサポート、wiki、問題追跡システム、フォーラム、カレンダー、電子メールリマインダーなどが含まれます。
このガイドでは、CentOS8に最新バージョンのRedmineをインストールして構成する方法について説明します。データベースとしてMariaDBを使用し、RubyアプリケーションサーバーとしてPassenger + Apacheを使用します。
次の条件を満たすことを確認してください。
Redmineは、MySQL / MariaDB、Microsoft SQL Server、SQLite 3、および[PostgreSQL](https://cloud.tencent.com/product/postgresql?from=10680)をサポートしています。データベースバックエンドとしてMariaDBを選択します。
CentOSシステムにMariaDBまたはMySQLをインストールしていない場合は、以下の手順に従ってインストールできます。[https://linuxize.com/post/how-to-install-mariadb-on-centos-8/](https://linuxize.com/post/how-to-install-mariadb-on-centos-8/)
次のコマンドを使用して、MySQLシェルにログインします。
sudo mysql
MySQLシェルで、次のSQL式を実行してデータベースを作成し、新しいユーザーを作成して、ユーザーを承認します。
CREATE DATABASE redmine CHARACTER SET utf8;
GRANT ALL ON redmine.* TO 'redmine'@'localhost' IDENTIFIED BY 'change-with-strong-password';
必ず変更してください-with-strong-passwordを強力なパスワードに置き換えます。
完了したら、MySQLシェルを終了します。
EXIT;
Passengerは、Ruby、Node.js、およびPythonに適した、非常に高速で軽量なWebアプリケーションサーバーであり、ApacheおよびNginxと統合することもできます。
PassengerをApacheモジュールとしてインストールします。
[EPELリポジトリ](https://linuxize.com/post/how-to-enable-epel-repository-on-centos/)を有効にします。
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ダウンロードページ](https://www.redmine.org/projects/redmine/wiki/Download)を参照して、新しいバージョンが利用可能かどうかを確認してください。
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
curl
を使用して、Redmine圧縮パッケージをダウンロードします。
curl -L http://www.redmine.org/releases/redmine-4.1.0.tar.gz -o redmine.tar.gz
ダウンロードが完了したら、圧縮パッケージを解凍します。
tar -xvf redmine.tar.gz
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
「本番」の章を検索し、前に作成したMySQLデータベースとユーザー情報を入力します。
/opt/redmine/redmine-4.1.0/config/database.yml
production:
adapter: mysql2
database: redmine
host: localhost
username: redmine
password:"change-with-strong-password"
encoding: utf8mb4
完了したら、ファイルを保存してエディターを終了します。
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
次のコマンドを実行してキーを生成し、データベースを移行します。
bundle exec rake generate_secret_token
RAILS_ENV=production bundle exec rake db:migrate
sudoユーザーに戻り、ApacheVhostファイルを作成します。
exit
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
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>
例を追加することを忘れないでください.comをRedmineドメイン名に置き換えます。
Apacheサービスを再起動し、次のように入力します。
sudo systemctl restart httpd
信頼できる[SSL証明書](https://cloud.tencent.com/product/symantecssl?from=10680)がない場合は、次の手順に従って、無料のLet'sEncrypt証明書を生成できます。 [https://linuxize.com/post/secure-apache-with-let-s-encrypt-on-centos-8/](https://linuxize.com/post/secure-apache-with-let-s-encrypt-on-centos-8/)
証明書が生成されたら、次のように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>
例を追加することを忘れないでください.comをRedmineドメイン名に置き換え、正しいSSL証明書ファイルパスを設定します。すべてのHTTPリクエストはHTTPSに転送されます。
ブラウザを開き、ドメイン名を入力すると、インストールプロセスが成功すると、次のようなインターフェイスが表示されます。
デフォルトのログイン資格情報は次のとおりです。
初めてログインすると、次のようにパスワードを変更するように求められます。
パスワードを変更すると、ユーザーページにリダイレクトされます。
ページにアクセスできない場合は、ファイアウォールが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
これで、CentOSシステムにRedmineが正常にインストールされました。ここで、[Redmineドキュメント](https://www.redmine.org/guide)を確認し、Redmineの構成方法と使用方法を学習する必要があります。
Recommended Posts