GNU/Linux >> Linux の 問題 >  >> Cent OS

CentOS7にRedmineをインストールして構成する

Redmineは、プロジェクト管理と問題追跡のためのオープンソースの無料のWebベースのツールです。 Ruby on Railsフレームワーク上に構築されており、複数のプロジェクト、Wiki、フォーラム、カレンダー、電子メール通知などをサポートするクロスプラットフォームおよびクロスデータベースソリューションを提供します。

CentOS7サーバーにRedmineをインストールして構成する方法の詳細なガイドは次のとおりです。

前提条件

まず、パブリックサーバーのIPを指すドメイン名が必要です。このチュートリアルでは、example.comを参照します。また、sudo権限を持つユーザーとしてログインする必要があります。

これ以外に、データベースバックエンドも必要になります。この例では、MariaDBを使用します。ただし、Redmineはこれらすべてをサポートしているため、Microsoft SQL Server、SQLite 3、およびPostgreSQLを使用することもできます。

最後に、NginxでPassengerを使用するRubyアプリケーションサーバーが必要になります。これらのいずれもシステムにインストールされていない場合でも、心配する必要はありません。また、それらをインストールして構成する方法も示します。

Redmineをインストールする前にシステムを準備する

すでに説明したように、Redmineをインストールして実行する前に、CentOSシステムに必要なものがいくつかあります。インストールしていない場合は、セットアップ方法を示すステップバイステップのウォークスルーをご覧ください。

注:データベースバックエンドまたはRubyアプリケーションサーバーがすでにインストールされている場合は、これらの手順をスキップして次の手順に進むことができることは言うまでもありません。

ステップ1:必要なパッケージのインストール

Redmineをインストールする前に、ソースから必要なRedmineおよびRubyパッケージをインストールしてシステムを準備する必要があります。

これを行うには、ターミナルで次のコマンドを入力します。

$ sudo yum install curl gpg gcc gcc-c++ make patch autoconf automake bison libffi-devel libtool 
$ sudo yum install readline-devel sqlite-devel zlib-devel openssl-develh readline glibc-headers glibc-devel
$ sudo yum install mariadb-devel zlib libyaml-devel bzip2 iconv-devel ImageMagick ImageMagick-devel

それが終わったら、MySQLデータベースを作成します。

ステップ2:CentOS7にMariaDBをインストールする

好きなデータベースバックエンドを自由に使用できます。ただし、このチュートリアルでは、MariaDB / MySQLを使用するため、システムにインストールする方法を示す簡単なチュートリアルを次に示します。

MariaDBバージョン5.5にはCentOSリポジトリが付属しているため、便宜上、これをインストールします。最新バージョンではありませんが、非常に安定しており、問題が発生することはありません。

ターミナルで次のコマンドを入力して、MariaDBパッケージをインストールします。

$ sudo yum install mariadb-server

インストールが完了したら、次のコマンドを入力して、システムの起動中に起動できるようにします。

$ sudo systemctl start mariadb
$ sudo systemctl enable mariadb

次に、次のコマンドを入力して、インストールが成功したかどうかを確認します。

$ sudo systemctl status mariadb

出力は、サービスがアクティブで実行中であることを示しているはずです。それが処理されたら、次のスクリプトを実行していくつかのセキュリティ関連のタスクを実行し、すべてが正しく、意図したとおりに機能していることを確認します。

$ sudo mysql_secure_installation

これにより、次のプロンプトが表示されます。

Do you want to set up the root user password?
Do you want to remove anonymous user accounts?
Do you want to restrict root user access to the local machine?
Do you want to remove the test database?

これらすべての質問にY(はい)で答えてください。

これで、CentOSシステムにMariaDBが正常にインストールされました。次のステップに進みましょう。

ステップ3:MySQLデータベースを作成する

CentOSシステムにMariaDBをインストールした状態で、次の手順に従ってMySQLデータベースを作成します。まず、MySQLシェルにログインする必要があります。これを行うには、ターミナルで次のコマンドを入力します。

$ sudo mysql

次に、新しいデータベースを作成する必要があります。これを行うには、MySQLシェル内から次のコマンドを入力します。

mysql> CREATE DATABASE redmine CHARACTER SET utf8;

それが完了したら、MySQLユーザーアカウントを作成し、新しく作成されたデータベースへのアクセスを提供する必要があります。これは、次のコマンドを使用して実行されます。

mysql> GRANT ALL ON redmine.* TO 'redmine'@'localhost' IDENTIFIED BY 'EnterPasswordHere';

EnterPasswordHereを選択した強力なパスワードに置き換えます。

これで、MySQLデータベースが正常に作成されました。次のコマンドを使用してシェルを終了し、次の手順に進みます。

mysql> EXIT;

ステップ4:PassengerとNginxをインストールする

Passengerは、Ruby、Node.js、およびPython用に設計されたWebアプリケーションサーバーです。超高速、軽量で、ApacheおよびNginxと統合できます。このチュートリアルでは、Nginx用のPassengerモジュールをインストールします。

これを行うには、最初にEPELリポジトリを含むいくつかの必要なパッケージをインストールする必要があります。これを行うには、ターミナルで次のコマンドを入力します。

$ sudo yum install epel-release yum-utils pygpgme
$ sudo yum-config-manager --enable epel

次に、Phusionpassengerリポジトリを有効にする必要があります。これは、次のコマンドを使用して実行できます:

$ sudo yum-config-manager --add-repo https://oss-binaries.phusionpassenger.com/yum/definitions/el-passenger.repo

最後に、パッケージリストを更新し、次のコマンドを使用してNginxとPassengerの両方をインストールします。

$ sudo yum install nginx passenger passenger-devel

ステップ5:新しいシステムユーザーを作成する

Redmineをインストールするためのセットアップはほぼ完了しました。次に行う必要があるのは、Redmineインスタンスを実行する新しいシステムユーザーとグループを作成することです。まず、ターミナルで次のコマンドを入力して、新しいユーザーを作成します。

$ sudo useradd -m -U -r -d /opt/redmine redmine

簡単にするために、ユーザー名はredmineのままにしました。ただし、任意のユーザー名を自由に使用できます。

次に、次のコマンドを使用して、ngnixユーザーを新しいユーザーグループに追加します。

$ sudo usermod -a -G redmine nginx

最後に、Nginxからアクセスできるように、/ opt/redmineディレクトリのアクセス許可を変更します。これを行うには、次のコマンドを入力します:

$ sudo chmod 750 /opt/redmine

ステップ6:Rubyをインストールする

そして今、すべてを準備するための最後のステップとして、CentOSシステムにRubyをインストールする必要があります。

ここで注意が必要なのは、CentOSリポジトリに付属しているRubyバージョンが古く、Redmineでサポートされていないことです。これが、RVMを使用してインストールする必要がある理由です。

まず、次のコマンドを入力して、Redmineユーザーに切り替えます。

$ sudo su - redmine

次のコマンドを使用してGPGキーをインポートする必要があります:

$ gpg --keyserver hkp://pool.sks-keyservers.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 7D2BAF1CF37B13E2069D6956105BD0E739499BDB

それが完了したら、次のコマンドを使用してRVMをインストールします。

$ curl -sSL https://get.rvm.io | bash -s stable

ここで、RVMを使用するには、次のコマンドを使用してRVMファイルを入手する必要があります。

$ source /opt/redmine/.rvm/scripts/rvm

最後に、Rubyをシステムにインストールします。これを行うには、端末で次のコマンドを入力します。

$ rvm install 2.7
$ rvm --default use 2.7

注:ここで、2.7はRubyバージョン2.7を指します。これは、執筆時点でのRubyの最新バージョンです。これを読んでいるときにRubyの更新バージョンがある場合は、代わりにダウンロードしてください。 Redmineがサポートしている限り、バージョン2.7をいつでも使用できます。

以上です! CentOSシステムが正常に構成され、Redmineをインストールする準備が整いました。

CentOS7にRedmineをインストールする

Redmineをインストールするときは、常にRedmineダウンロードページをチェックして最新バージョンを確認し、それをダウンロードする必要があります。このチュートリアルのために、執筆時点での現在の安定したリリースであるRedmineバージョン4.1.1をインストールします。

これで、CentOS7にRedmine4.1.1をインストールするためのステップバイステップガイドが表示されます。

ステップ1:Redmineをダウンロードする

開始する前に、Redmineユーザーとしてログインしてすべてのコマンドを実行していることを確認してください。

それが済んだら、Redmineアーカイブをシステムにダウンロードします。次のcurlコマンドを使用してこれを行うことができます:

$ curl -L http://www.redmine.org/releases/redmine-4.1.1.tar.gz -o redmine.tar.gz

アーカイブをダウンロードした後、次のコマンドを使用してアーカイブを抽出します。

$ tar -xvf redmine.tar.gz

ステップ2:Redmineデータベースを構成する

次に、Redmineデータベースを構成する必要があります。次のコマンドを使用して、Redmineサンプルデータベース構成ファイルをコピーすることから始めます。

$ cp /opt/redmine/redmine-4.1.1/config/database.yml.example /opt/redmine/redmine-4.1.1/config/database.yml

次に、選択したテキストエディタを使用してファイルを開きます。 nanoエディターを使用します。

nano /opt/redmine/redmine-4.1.1/config/database.yml

次に、本番セクションで検索し、以下に示すように、ユーザー名やパスワードなど、以前に作成したMySQLデータベース情報を入力します。

production:
adapter: mysql2
database: redmine
host: localhost
username: redmine
password: "EnterPasswordHere"
encoding: utf8

EnterPasswordHereを選択した強力なパスワードに置き換えます。

完了したら、ファイルを保存して終了し、次のステップに進みます。

ステップ3:Rubyの依存関係をインストールする

次に、すべてのruby依存関係とバンドラーをインストールする必要があります。

これを行うには、redmine-4.1.1ディレクトリに移動し、ターミナルを開いて、次のコマンドを入力します。

$ cd ~/redmine-4.1.1
$ gem install bundler --no-rdoc --no-ri
$ bundle install --without development test postgresql sqlite

ステップ4:キーの生成とデータベースの移行

ターミナルで次のコマンドを入力して、キーを生成し、データベースを移行します。

$ bundle exec rake generate_secret_token
$ RAILS_ENV=production bundle exec rake db:migrate

ステップ5:Nginxを構成する

ここで、Redmineにアクセスする前に、Nginxを設定する必要があります。これを行うには、最初に次のコマンドを入力してsudoユーザーに戻ります。

$ exit

次に、テキストエディタを開き、Nginxサーバーブロックファイルを作成します。これを行うには、次のコマンドを入力します。

$ sudo nano /etc/nginx/conf.d/example.com.conf

次に、次のコンテンツをコピーしてファイル内に貼り付けます。

:example.comをRedmineドメインに切り替えることを忘れないでください。

passenger_root /usr/share/ruby/vendor_ruby/phusion_passenger/locations.ini;
passenger_ruby /opt/redmine/.rvm/gems/default/wrappers/ruby;
passenger_instance_registry_dir /var/run/passenger-instreg;

server {
listen 80;
server_name example.com www.example.com;

root /opt/redmine/redmine-4.1.1/public;

# log files
access_log /var/log/nginx/example.com.access.log;
error_log /var/log/nginx/example.com.error.log;

passenger_enabled on;
passenger_min_instances 1;

client_max_body_size 10m;
}

それが完了したら、次のコマンドを入力して、システムエラーがないことを確認するためのテストを実行します。

$ sudo nginx -t

エラーのないクリーンな出力は次のようになります。

nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

緑色のライトが表示されたら、次のコマンドを入力してNginxサーバーを再起動できます:

sudo systemctl restart nginx

ステップ6:SSLでNginxを暗号化する

NginxをSSL認証で構成する必要があります。ドメインが信頼できるSSL証明書でまだ保護されていない場合は、Let’sEncryptを使用して無料のSSL証明書を生成できます。

証明書を入手したら、Nginx構成ファイルを再度編集する必要があります。これを行うには、まず、次のコマンドを使用してテキストエディタで開く必要があります。

$ sudo nano /etc/nginx/conf.d/example.com.conf

次に、以下に示すようにファイルを編集します。

passenger_root /usr/share/ruby/vendor_ruby/phusion_passenger/locations.ini;
passenger_ruby /opt/redmine/.rvm/gems/default/wrappers/ruby;
passenger_instance_registry_dir /var/run/passenger-instreg;

# Redirect HTTP -> HTTPS
server {
listen 80;
server_name www.example.com example.com;

include snippets/letsencrypt.conf;
return 301 https://example.com$request_uri;
}

# Redirect WWW -> NON WWW
server {
listen 443 ssl http2;
server_name www.example.com;

ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem;
ssl_trusted_certificate /etc/letsencrypt/live/example.com/chain.pem;
include snippets/ssl.conf;

return 301 https://example.com$request_uri;
}

server {
listen 443 ssl http2;
server_name example.com;

root /opt/redmine/redmine-4.1.1/public;

# SSL parameters
ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem;
ssl_trusted_certificate /etc/letsencrypt/live/example.com/chain.pem;
include snippets/ssl.conf;
include snippets/letsencrypt.conf;

# log files
access_log /var/log/nginx/example.com.access.log;
error_log /var/log/nginx/example.com.error.log;

passenger_enabled on;
passenger_min_instances 1;
client_max_body_size 10m;
}

:example.comをRedmineドメインに切り替えることを忘れないでください。

以上です!これで、Redmineにアクセスする準備が整いました。

Redmineへのアクセス

これで、CentOSにRedmineが正常にインストールおよび構成されました。いよいよアクセスして、すべてが正しく機能しているかどうかを確認します。

Redmineにアクセスするには、まずブラウザを開いてドメインを入力する必要があります。インストールが成功すると、ユーザー名とパスワードの入力を求める次の画面が表示されます。

デフォルトでは、ログイン資格情報は次のとおりです。

Username: admin
Password: admin

初めてログインすると、システムからパスワードをより安全なパスワードに変更するように求められます。

パスワードを変更すると、メインのユーザーアカウントページにリダイレクトされ、そこからRedmineの使用を開始できます。


Cent OS
  1. CentOS7にNginxをインストールして構成する方法

  2. CentOS7にRedisをインストールして設定する方法

  3. CentOS7にGitLabをインストールして構成する方法

  1. CentOS7にRedmineをインストールして設定する方法

  2. CentOS8にRedisをインストールして設定する方法

  3. CentOS8にRedmineをインストールして設定する方法

  1. CentOS8にSambaをインストールして設定する方法

  2. CentOS7でNginxを使用してAskbotをインストールおよび構成する方法

  3. CentOS7にGitLabCEをインストールして構成する方法