«(5) パイプライン 最新 MacOS X 10.9 / Xcode 5 で GLU..»

床井研究室

現在ここに和歌山大学外から連続してアクセスすると,2回目以降にアクセスできなくなる現象が発生しています.その場合はお手数をおかけしますが,ブラウザのキャッシュのクリアをお試しください.


■ 2012年09月27日 [メモ] Mac OS X 10.8 Server に Redmine をインストール

2012年10月04日 13:44更新

演習の進捗管理

演習の進捗管理に Redmine を使う必要があるか微妙に疑問だし, まだほんとにやるかどうかわからないけど, いっぺん提案してみようと思って Mac OS X Server にインストールしようとしたら, OS が 10.8 (Mountain Lion) になってて MySQL が使えず, いろいろハマったのでメモ. これで正しいのかどうかわからない. 多分, どこか間違ってる気がする.

参考

rubygems の update

標準の rubygems はバージョンが古いみたいだったので最新版にする.

  • sudo gem install rubygems-update
  • sudo update_rubygems

gem -v でバージョンを確認しておく.

Passenger のインストール

  • sodo gem install passenger
  • sudo passenger-install-apache2-module
    • Enter をタイプして先に進める
    • 最後に次のような Apache の設定が表示されるのでコピーしておく (この内容は passenger-install-apache2-module --snippet で後で参照できる)
LoadModule passenger_module /Library/Ruby/Gems/1.8/gems/passenger-3.0.17/ext/apache2/mod_passenger.so
PassengerRoot /Library/Ruby/Gems/1.8/gems/passenger-3.0.17
PassengerRuby /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/bin/ruby

bundler のインストール

bundler を使うと必要な gem を選んでインストールしてくれるみたい.

  • sudo gem install bundler

Redmine のソースを取得して展開

Web サーバの DocumentRoot 以外にインストールする. DocumentRoot は /etc/apache2/sites/0000_any_80_.conf などで設定されている.

  • cd <どこか適当なところで>
  • tar xzf redmine-2.*.*.tar.gz

Redmine で使う gem のインストール

Mountain Lion では MySQL が使えなくなったので, SQLite3 を使うことにする. PostgreSQL でもいいと思うけど.

  • cd <Redmine のソースを展開した場所>
  • bundle install --without development test postgresql mysql rmagick

ImageMagick くらい入れておいた方がいいかな.

database.yml ファイルの作成

  • cp config/database.yml.example config/database.yml
  • config/database.yml の編集
production:
  adapter: sqlite3
  database: db/redmine.db

ディレクトリの作成

  • mkdir public/plugin_assets

セッションストア秘密鍵の生成

  • rake generate_secret_token

データベースにテーブルを作成

  • rake db:migrate RAILS_ENV=production

テスト

WEBrick による Web サーバを起動してテストする.

  • ruby script/rails server webrick -e production
    • http://host:3000/ を開く. ユーザ名 / パスワードとも admin でログインできる.
    • admin でログにしたら administration メニューで管理者アカウントを作成する.
    • 作成した管理者アカウントでログインし直して admin を削除する.

うまく動いているようだったら WEBrick の Web サーバを Ctrl-C で止める.

DocumentRoot にリンクを張る

本当は Virtual Host を作って, その DocumentRoot にしたほうがいいのかもしれない.

  • ln -s public <DocumentRoot の場所>/redmine

Apache の設定ファイルを作成する

Passenger の起動と RailsBaseURI の設定, アクセスコントロールなど.

/etc/apache2/passenger.conf

これは Redmine 2.1をCentOS 6.3にインストールする手順 | Redmine.JP Blog を参考にした.

# Passengerの基本設定。
# passenger-install-apache2-module --snippet を実行して表示される設定を使用。
# 環境によって設定値が異なりますので以下の3行はそのまま転記しないでください。
#
LoadModule passenger_module /Library/Ruby/Gems/1.8/gems/passenger-3.0.17/ext/apache2/mod_passenger.so
PassengerRoot /Library/Ruby/Gems/1.8/gems/passenger-3.0.17
PassengerRuby /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/bin/ruby
 
# Passengerが追加するHTTPヘッダを削除するための設定。
#
Header always unset "X-Powered-By"
Header always unset "X-Rack-Cache"
Header always unset "X-Content-Digest"
Header always unset "X-Runtime"
 
# 必要に応じてPassengerのチューニングのための設定を追加。
#
PassengerMaxPoolSize 20
PassengerMaxInstancesPerApp 4
PassengerPoolIdleTime 3600
PassengerUseGlobalQueue on
PassengerHighPerformance on
PassengerStatThrottleRate 10
RailsSpawnMethod smart
RailsAppSpawnerIdleTime 86400
RailsFrameworkSpawnerIdleTime 0
RailsBaseURI /redmine

/etc/apache2/redmine.conf

redmine + passenger でのアクセス制限 - ihiro81's diary を参照のこと.

<Location /redmine>
  Order deny,allow
  Deny from all
  Allow from xxx.xxx.xxx.xxx
</Location>

/etc/apache2/sites/0000_any_80_.conf

以下の設定を追加

  • Include /etc/apache2/passenger.conf
  • Include /etc/apache2/redmine.conf

Redmine の所有者の変更

Redmine を展開したディレクトリ以下の所有者を全部 Apache を実行しているユーザ (_www) に変更する. 多分, 全部変更する必要はないけど, files log tmp public/plugin_assets と db/* だけではだめだったので.

Apache の再起動

  • sudo apachectl -k restart

Apache が 起動したら http://host/redmine/ を開く.

コメント(2) [コメントを投稿する]
琉球赤貝 2012年10月04日 08:44

[Apache の設定ファイルを作成する]は十分ではないが、この手順に従って設定できました。参考になりました。

とこ 2012年10月04日 13:43

ありがとうございます.実際に使っている設定に書き換えました.


編集 «(5) パイプライン 最新 MacOS X 10.9 / Xcode 5 で GLU..»