不良少年 » FreeBSD »

Apache + Passenger で作る Redmine 環境

Atom RSS

Apache + Passenger で作る Redmine 環境

 超久々に FreeBSD ネタ投下。
 システムエンジニアをメシのタネとしてるわたしにとって、部下の作業管理はなかなかに頭の痛い問題です。
 大抵は職場にプロジェクト管理ツールとかインストール済だったりするんですが、ときたま上級技術者の少ない職場では「……なにそれ?」とか結構本気で言われてびびることもあります。
 うおおプロジェクトリーダーが工程管理おろそかにしちゃいやーん。デスマーチはもっといやーん。

 そんなときは上司にこういいましょう。
「どの作業がヤバスか一目でわかる神ツールよん。しかもタダ☆」 ←最後が重要。
 するとあら不思議、ほとんどの上司は二つ返事で
「ほな開発サーバにインストールしてちょ。キミが言い出したんだからキミやってネ☆」
 といってくれます。きゃっほう!
 ……しまった仕事増えた!!

 いつも職場でそんなやりとりをしてるわけですが、なんだかんだで最初にインストールだけしてしまえば、後からどんどん味の出るツール。それがプロジェクト管理ツールなわけです。
 まあ職場ではともかく、自宅では複数人で同人ソフトでも作らない限り、滅多に必要ないんですけどね。
 ……なんですが、先日思うところあって自宅サーバにもインストールしてみました。
 今日のネタはそんなプロジェクト管理ツールのひとつ、Redmine の備忘録などをば。
 あいかわらず前置きが長いわあ。

自宅サーバに Apache は外せません

 自宅サーバ持ちの方で、Apache 等のHTTPサーバをインストールしていない方はあまりいないでしょう。
 わたしも自分のサイト専用のサーバが欲しかったので、自宅サーバ始めたクチですし。

 さて、Redmine に限らず最近のツールはWeb上で扱うのが普通です。てゆーかもはや業界標準です。
 そんなわけで、今回も Apache と連携させて使うようにしましょう。
 皆さんのサーバにも Apache がインストールされているものとして、Redmine のインストールと設定のみ解説します。
 一応 Redmine にも付属のHTTPサーバがあるのですが、ぶっちゃけルータの80番と25番以外のポートは開放したくありませんので、今回は使わない方向で進めます。

 ……そういえば Apache サーバの立て方解説してませんでした。あわわ。
 そのうち時間あるときにでもブログに書いておきます~。

Redmine のインストール

 毎度のことながら、ports 経由でインストールしてしまいましょう。
 ports インストールは手作業と違い、Ruby や Passenger など、Redmine が依存してる他ツールのインストールも自動で行えるので、超絶楽ちんです。
 試したことはナイですが、Apache も MySQL もインストールしていないなら、たぶん依存関係チェックでそれらのインストールもしてくれるはず。ものぐさなわたしにぴったりだ!

 それでは、いつも通り root ユーザーで以下のコマンドを実行します。

# cd /usr/ports/www/redmine
# make install

 インストールに必要なコマンドはこれだけです。
 途中、以下のようなオプション選択画面が出ると思いますが、出てこない場合は [Ctrl] + C キーを押下して一旦止め、「make install」の代わりに「make config install」と入力してください。

lqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqk
x                    Options for redmine 0.9.6                       x
x lqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqk x
x x          [X] MYSQL       Enable MySQL support                  x x
x x          [ ] POSTGRESQL  Enable PostgreSQL support             x x
x x          [X] RMAGIC      Enable Gantt charts support           x x
x x          [ ] THIN        Use Thin WEB server                   x x
x x          [X] PASSENGER   Use Apache/Nginx WEB server           x x
x x                                                                x x
x x                                                                x x
x x                                                                x x
x x                                                                x x
x x                                                                x x
x x                                                                x x
x x                                                                x x
x x                                                                x x
x x                                                                x x
x x                                                                x x
tqmqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqjqu
x                       [  OK  ]       Cancel                        x
mqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqj

 オプション画面をそのままコピペしただけなので、なんともキテレツな記号が出てますが気にしないように。
 ここでは「MYSQL」と「PMAGIC」、「PASSENGER」を選択してください。

 MySQL はいうまでもなくDB (データの保存) の選択です。
 RMagic は予定表をガントチャートで見る場合に必要です。
 今回のキモは一番下の Passenger です。後ほど説明しますが、Ruby で作られた Redmine を、Apache 経由で実行するためのモジュールです。

 後はひたすらインストール完了を待つだけ。
 途中で依存関係にあるツールのオプションを聞かれるかもですので、必要そうなオプションを選択してください。ほとんどはデフォルトのままでもオゲのはず。

 コマンドプロンプトが表示されればインストールは完了です。
 オブジェクトファイルなどの中間ファイルが邪魔な場合は、インストール完了後に

# make clean

 と入力してください。

データベースの用意

 インストールが終わったら、Redmine の設定をする前にデータベースを用意しなければなりません。
 mysql コマンドで MySQL にログイン後、以下のコマンドを実行してください。
 ここでは仮に「redmine」という名前のデータベースを作ってますが、名前はなんでも構いません。

# mysql -p

mysql > CREATE DATABASE redmine CHARACTER SET utf8;

 次に redmine データベースにアクセスするためのユーザーを作ります。

mysql > grant all on redmine.* to 'ユーザー名'@'localhost' identified by 'パスワード';

 以上の作業が終わったら、

mysql > exit

 で、MySQL を終了させます。
 以上でデータベースの用意は完了です。

Redmine の設定

 いよいよ Redmine の設定に入ります。
 といっても、必要な設定項目はかなり少ないんですけどね。

 データベース設定ファイルは「database.yml」なのですが、そもそもそんなファイルは存在しません。
 インストールディレクトリ (/usr/local/www/redmine) 可の「config/database.yml.example」ファイルをコピーするか、自分で書くかのどちらかになります。
 設定項目自体も少ないので、ここでは自分で書くことにしましょう。

# vi /usr/local/www/redmine/config/database.yml

 と入力してエディタを起動し、以下の内容を記述してください。

/usr/local/www/redmine/config/database.yml

production:             # プロダクションID
  adapter: mysql        # DB アダプタ (MySQL)
  database: redmine     # データベース名
  host: localhost       # DBホスト
  username: ユーザー名    # ユーザー名
  password: パスワード     # パスワード
  encoding: utf8        # 文字コード

 続けてメール送信設定も行います。
 ここも設定は似たようなもの (メールサーバだけ) です。

/usr/local/www/redmine/config/email.yml

production:
  delivery_method: :smtp
  smtp_settings:
    address: localhost
    port: 25
    domain: redmine.example.jp        # メール送信元のFQDN

 以上で Redmine の設定は完了です。……はやっ!

初期データを作る

 次に初期データやDBのテーブルを作成します。
 以下のコマンドを実行してください。

# cd /usr/local/www/redmine
# rake generate_session_store
# rake db:migrate RAILS_ENV=production
# rake redmine:load_default_data RAILS_ENV=production

 最後の「rake redmine:load_default_data」コマンド実行中に使用言語を聞いてきますので、「ja」と答えておきましょう。

ちょっちテスト

 ここまでの設定に不備がないかどうか、Redmine 付属のサーバで試してみましょう。
 下記コマンドでサーバを起動できます。終了するときは [Ctrl] + C で。

# cd /usr/local/www/redmine
# ruby script/server -e production

 サーバ起動中にブラウザで「http://サーバのIPアドレス:3000/」を閲覧し、Redmine ホーム画面が表示されたらオゲ。

Apache + Passenger の設定

 いよいよ本番。Apache で Redmine を動かします。
 その前に、/usr/local/www/redmine/public ディレクトリにシンボリックリンクを貼っておきましょう。
 とりあえずここでは「http://サーバのFQDN/redmine/」で見られるようにするため、ドキュメントルートの下にシンボリックリンクを置きます。

# cd ドキュメントルートディレクトリ
# ln -s /usr/local/www/redmine/public redmine

 次に httpd.conf に、以下の記述を追加します。(どこでもオゲ)

/usr/local/etc/apache22/httpd.conf

# Passenger モジュールのロード
LoadModule passenger_module /usr/local/lib/ruby/gems/1.8/gems/passenger-2.2.15/ext/apache2/mod_passenger.so

# Passenger の設定
PassengerRoot /usr/local/lib/ruby/gems/1.8/gems/passenger-2.2.15
PassengerRuby /usr/local/bin/ruby18

# Passenger はタイムアウトすると次回読み込みにすんげー時間かかるので、
# タイムアウトさせずにプロセスを維持し続ける
# (注: 自宅サーバ専用設定! レンタルサーバでこんな書き方したら怒られます)
PassengerPoolIdleTime 0

# Ruby on Rails で実行させるディレクトリ
# (注: Alias は使えません。実ディレクトリかシンボリックリンクを使うこと)
RailsBaseURI /redmine

Apache の再起動

 これで設定はすべて完了です。

# apachectl -t

 で「Syntax OK」と出たら、

# /usr/local/etc/rc.d/apache22 restart

 で、Apache を再起動させましょう。
 ブラウザで「http://サーバのFQDN/redmine/」と入力すれば、Redmine に繋がります。

 Redmine プロジェクトの設定などは、Redmine.jp の日本語訳などを読みながら行ってください。

関連記事

トラックバック

コメント

comment GalenFam さん - 2017年3月11日 (土) 2:25:31

Существует такая услуга – добровольное медицинское обслуживание (или ДМО).
Она предполагает, что вы платите небольшую сумму за то, что посещает врачей целый год БЕСПЛАТНО.
Однако опросы показали, что лишь 6% жителей Санкт-Петербурга знают о такой программе.
Почему так происходит?
Потому что частным клиникам выгоднее сдирать с людей деньги за каждый визит.
А если честный врач посоветует добровольное медицинское обслуживание клиенту – это сулит ему увольнением.
Эта информация уже спровоцировала кучу возмущений, сразу после того как информацию об услуге рассекретил один возмущенный врач.
Его уволили , после того, как он предложил ДМО своему пациенту.
Самое ужасное, что официальные положения по ДМО присутствуют в открытом доступе, просто находили на эту информацию единицы.
Как отстоять свои права?
О правилах предоставления услуги и обязанностях частных клиник можно узнать, просто вбив в Яндекс фразу: “добровольное медицинское обслуживание”.
Именно обслуживание, а не страхование.

34j5c6h86

comment OkuWaw さん - 2017年4月10日 (月) 12:52:52

<a href=”http://buy-tadalafil-ph.com/#nizoral-alternative-cialis-20mg” rel=”nofollow”>tadalafil</a> course

コメント投稿フォーム

※ スパム防止の為、コメント内に2個以上のリンクがあった場合、サイト管理者 (かのう神路) が承認するまで表示されません。

ページの先頭に戻る