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

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

Redmineは、最も人気のあるオープンソースのプロジェクト管理および問題追跡ソフトウェアツールの1つです。クロスプラットフォームおよびクロスデータベースであり、RubyonRailsフレームワーク上に構築されています。

Redmineには、複数のプロジェクト、Wiki、問題追跡システム、フォーラム、カレンダー、電子メール通知などのサポートが含まれています。

このチュートリアルでは、MariaDBをデータベースバックエンドとして使用し、Passenger + NginxをRubyアプリケーションサーバーとして使用して、CentOS7サーバーに最新バージョンのRedmineをインストールして構成するために必要な手順について説明します。

前提条件#

このチュートリアルを続行する前に、次の前提条件を満たしていることを確認してください。

  • サーバーのパブリックIPを指すドメイン名。このチュートリアルでは、example.comを使用します 。
  • sudo権限を持つユーザーとしてログインしました。

ソースから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-develsudo yum install mariadb-devel zlib libyaml-devel bzip2 iconv-devel ImageMagick ImageMagick-devel
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;

次に、MySQLユーザーアカウントを作成し、データベースへのアクセスを許可します。

GRANT ALL ON redmine.* TO 'redmine'@'localhost' IDENTIFIED BY 'change-with-strong-password';
必ずchange-with-strong-passwordを変更してください 強力なパスワードを使用します。

完了したら、次のように入力してmysqlシェルを終了します。

EXIT;

PassengerとNginxのインストール#

Passengerisは、ApacheおよびNginxと統合できるRuby、Node.js、Python用の高速で軽量なWebアプリケーションサーバーです。 PassengerをNginxモジュールとしてインストールします。

EPELリポジトリと必要なパッケージをインストールします:

sudo yum install epel-release yum-utils pygpgmesudo yum-config-manager --enable epel

Phusionpassengerrepositoryを有効にします:

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
新しいシステムユーザー番号の作成

Redmineインスタンスを実行する新しいユーザーとグループを作成します。簡単にするために、ユーザーにredmineという名前を付けます。 :

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

nginxを追加します ユーザーを新しいユーザーグループに変更し、/opt/redmineを変更します Nginxがアクセスできるようにするためのディレクトリ権限:

sudo usermod -a -G redmine nginxsudo chmod 750 /opt/redmine

Rubyのインストール#

CentOSリポジトリのRubyのバージョンはかなり古く、Redmineではサポートされていません。 RVMを使用してRubyをインストールします。

ユーザーredmineに切り替えます 次のように入力します:

sudo su - redmine

GPGキーをインポートし、RVMをインストールします:

gpg --keyserver hkp://pool.sks-keyservers.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 7D2BAF1CF37B13E2069D6956105BD0E739499BDBcurl -sSL https://get.rvm.io | bash -s stable

RVMソースの使用を開始するにはrvm ファイル:

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

これで、次を実行してRubyをインストールできます:

rvm install 2.5rvm --default use 2.5
Rbenvを介してRubyをインストールする場合は、このガイドを確認してください。

CentOSへのRedmineのインストール#

この記事を書いている時点で、Redmineの最新の安定バージョンはバージョン4.0.1です。

次の手順に進む前に、Redmineのダウンロードページをチェックして、新しいバージョンが利用可能かどうかを確認する必要があります。

redmineとして次の手順を実行していることを確認してください ユーザー。

1。 Redmineのダウンロード#

次のcurlコマンドを使用してRedmineアーカイブをダウンロードします。

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

ダウンロードが完了したら、アーカイブを抽出します。

tar -xvf redmine.tar.gz

2。 Redmineデータベースの構成#

Redmineのサンプルデータベース構成ファイルをコピーします:

cp /opt/redmine/redmine-4.0.1/config/database.yml.example /opt/redmine/redmine-4.0.1/config/database.yml

テキストエディタでファイルを開きます:

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

productionを検索します セクションをクリックして、以前に作成したMySQLデータベースとユーザー情報を入力します。

/opt/redmine/redmine-4.0.1/config/database.yml
production:
  adapter: mysql2
  database: redmine
  host: localhost
  username: redmine
  password: "change-with-strong-password"
  encoding: utf8

完了したら、ファイルを保存してエディタを終了します。

3。 Ruby依存関係のインストール#

redmine-4.0.1に移動します ディレクトリを作成し、bundlerおよびその他のRuby依存関係をインストールします:

cd ~/redmine-4.0.1gem install bundler --no-rdoc --no-ribundle install --without development test postgresql sqlite

4。キーの生成とデータベースの移行#

次のコマンドを実行してキーを生成し、データベースを移行します。

bundle exec rake generate_secret_tokenRAILS_ENV=production bundle exec rake db:migrate

Nginxの構成#

sudoユーザーに戻ります:

exit

テキストエディタを開き、次のNginxサーバーブロックファイルを作成します。

sudo nano /etc/nginx/conf.d/example.com.conf
/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;

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

    root /opt/redmine/redmine-4.0.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;
}
example.comをRedmineドメインに置き換えることを忘れないでください。

Nginxサービスを再起動する前に、構文エラーがないことを確認するためのテストを行います。

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

SSLを使用してNginxを構成する#

ドメインに信頼できるSSL証明書がない場合は、次の手順に従って無料のLet’sEncryptSSL証明書を生成できます。

証明書が生成されたら、ドメインNginx構成を次のように編集します。

sudo nano /etc/nginx/conf.d/example.com.conf
/etc/nginx/conf.d/example.com
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.0.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ドメインに置き換え、SSL証明書ファイルへの正しいパスを設定することを忘れないでください。すべてのHTTPリクエストはHTTPSにリダイレクトされます。 Redmineへのアクセス#

ブラウザを開き、ドメインを入力すると、インストールが成功したと仮定して、次のような画面が表示されます。

Redmineのデフォルトのログインクレデンシャルは次のとおりです。

  • ユーザー名:admin
  • パスワード:admin

初めてログインするときは、以下に示すようにパスワードを変更するように求められます。

パスワードを変更すると、ユーザーアカウントページにリダイレクトされます。


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

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

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

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

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

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

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

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

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