Redmineをインストールする。(1/3)

Pocket

既に記録したものと思い込んでいたが、Redmineのインストール方法を記載していなかった。

ということで、今回はRedmineをインストールしてみる。

Redmineとは

Redmineはプロジェクト管理を行うためおソフトウェアである。
プロジェクトにおける各種の文書管理やスケジュール管理などが可能である。
プロジェクトで使うからと言って、大規模なファイルを共有するためのシステムではない。
大規模なファイルの保管は別途管理方法を考えることをお勧めする。

以前に私が使用した時には、画像がたくさん含まれているドキュメントファイルを共有しようと思い、1GB以上のファイルをRedmineで保管していたのですが、運用上宜しい状態とは言えなかった。
また、アップロード/ダウンロード共にそれ程速いとは言えなかった。
多分、数十MB~最大でも2~300MB程度までのファイルを扱うに留めることが妥当ではないだろうか?
実際に多くのファイルは数MB程度のファイル・・・つまりは、メールでやり取りするファイルサイズを少し上回る程度のファイルを管理する程度が使い勝手良さそうな気がしている。

各種の機能に関しては後述するとして、まずはインストールの方法を記載する。

対象機材:

OS:CentOS 6.8

どうも利用したCentOS 7.xのクラウドサーバは安定性に欠けると判断した。
その為、已む無く今更ながら・・・・・6.xを使用する。

実際に使用したクラウドサーバのスペックは最低限の所謂ワンコインサーバで実装している。
当然、環境が充実していることに越したことはないが、それでも十分に動くんだ~と言えるくらいにはなるだろう。

DB(データベース):MySQL 5.1.73

標準でインストールされている環境もあるかと思いますが。。。
後ほど説明しますね。

Webサーバ:Apache 2.2.15

標準的ですね。
インストールされていないかったら、yum install httpd httpd-develでインストールしちゃいましょうw。ということで、こちらも後ほど説明します。

取りあえずこんなものがインストールされていると良いのですが、簡単なインストール方法は後述します。
既にインストールが完了している方は、適宜読み飛ばしてください。

インストール前準備

インストールを行う前に、SELinuxを一時的に無効化してください。
SELinxを無効化する方法としては、2つの方法があります。

1)SELinuxの一時的停止

この方法では、SELinuxを一時的に停止させることが出来ます。
システムをリブートするとSELinuxは有効状態に戻ります。

# getenforce
Enforcing
# setenforce 0
# getenforce
Permissive
#

まずは、getenforceで現在の状態を確認しています。
Enforceingとなっている場合は、SELinuxが有効になっています。

setenforce 0とすることで、一時的にSELinxを無効化しています。
設定が行われたことを確認するために、再度getenforceを行います。
Permissiveとなっていれば、SELinuxは一時的に無効化されています。

厳密には、Permissiveの状態においてSELinuxは無効化されているというよりは、監視モード(セキュリティ上ガードが掛からないが、監視は行っている状態)になっているという理解の方が正しいかと思います。
実は、この方法を取りながら、ログを確認してセキュリティの許可設定を行う情報を収集するなどの目的に使用することがあります。

今回は、単にSELinuxの一時的無効化だけの為に使用する方法を記載します。

ついでに、SELinuxをPermissive状態からEnforceingに戻す場合は、以下のコマンドを実行します。

# getenforce
Permissive
[root@localhost ~]# setenforce 1
[root@localhost ~]# getenforce
Enforcing
[root@localhost ~]#

2)SELinuxの恒久的無効化

SELinuxを恒久的に無効化する方法について説明します。

# vi /etc/sysconfig/selinux

以下ファイルの編集

SELINUX=enforcing <==ここを編集

SELINUX=disabled  <==変更後

サーバを再起動すると無効化(disabled)の状態になります。

リポジトリの追加

標準のリポジトリにRedmaineは含まれておりません。
その為、EPELレポジトリを使えるようにする必要があります。

yum install epel-release

一応そのまま使用します。
毎回EPELリポジトリを参照するのが邪魔になる時には、/etc/yum.repos.d/epel.repoの[epel]に記載されているenabled=1を0に変更してください。

yumを使用する際、明示的にEPELリポジトリを指定しない限り、EPELリポジトリを参照することが無くなります。

インストール作業

Redmineは幾つかのパッケージを使用して構築されています。
その為、Redmineをインストールするには関連する幾つかのパッケージをインストールしてあげる必要があります。

開発環境のインストール

まずは手始めに開発環境(コンパイラ等)をインストールすることになります。

# yum groupinstall "Development Tools"

CとC++だけ入れても良かったのですが、ひとまとめに入れてしまいました。

RubyとPassengerのビルドに必要な環境の整備

よく解りませんが、opennsslとかzlibとかの開発環境をインストールしちゃいます。

# yum install openssl-devel readline-devel zlib-devel curl-devel libyaml-devel

データベース環境のインストール

データベースにはMySQLを使用します。
CentOS 7ではMariaDBですかね?

yum -y install mysql-server mysql-devel

私の環境では既にmysql-serverがインストールされていたのですが、開発用のファイルがターゲットマシンにインストールされていなかったのでmysql-develをインストールしました。

Redmineのバージョンによってオフィシャルで紹介されているデータベースの環境がことなります。

今回はPostgreSQLを使用します。

# yum -y install postgresql-server postgresql-devel

Web環境のインストール

Apacheのインストールを行います。
環境によっては既にApacheがインストールされている場合もあります。
私の環境では既にhttpdがインストールされていたのですが、開発用のhttpd-develが未インストールでした。
インストール方法は以下の通りです。

yum install httpd httpd-devel

画像編集環境とフォントのインストール

Redmineでは画像編集にImageMagickを使っています。
そして日本語フォントを準備する必要があります。

# yum -y install ImageMagick ImageMagick-devel ipa-pgothic-fonts

※2022年6月現在のメモ
※ipa-pgothic-fontsをyum/dnfでインストール出来ない。Rocky Linuxで確認。
※対策は以下
※rpm -Uvh https://pkgs.dyn.su/el8/base/x86_64/ipa-pgothic-fonts-003.03-14.el8.noarch.rpm

そろそろ疲れてきました・・・・当初1000文字程度で一旦区切りを付けようと思っていたのがいつの間にか3000文字を超えています(^^ゞ

ここからのインストールでは、少し手間が掛かります。
つづきは次回に回します。

次回(Redmineをインストールする。(2/3))を参照ください。

コメントを残す

メールアドレスが公開されることはありません。

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください