アイビスヘッダー

IBS

2015年10月7日水曜日

Amazon EC2上にRedmine3.1.1のインストール時にはまったこと

Amazon EC2上にRedmine3.1.1+Gitを導入することになりました。
導入手順は以下のサイトを参考にしました。
Redmine.JP Blog

Rubyパッケージは標準で用意されているRuby22パッケージを利用しました。

めっちゃはまったのは「Gemパッケージのインストール」です。
ここで以下のエラーが発生
Gem::Ext::BuildError: ERROR: Failed to build gem native extension.

    /usr/bin/ruby2.2 -r ./siteconf20151007-4046-18z7m00.rb extconf.rb
mkmf.rb can't find header files for ruby at /usr/share/ruby/include/ruby.h

extconf failed, exit code 1

Gem files will remain installed in /var/lib/redmine/vendor/bundle/ruby/2.2/gems/json-1.8.3 for inspection.
Results logged to /var/lib/redmine/vendor/bundle/ruby/2.2/extensions/x86_64-linux/2.2/json-1.8.3/gem_make.out
An error occurred while installing json (1.8.3), and Bundler cannot continue.
Make sure that `gem install json -v '1.8.3'` succeeds before bundling.


パッケージを見てみると「rubygem22-json-1.8.2」が導入されているので削除しようとしてみましたが依存関係で削除できません。
 rpmで導入されているならbundle installではインストールしないようにとか考えましたが、意外と解決方法は簡単でした。

解決方法は、「ruby22-devel」パッケージをインストールすることでした。


次のはまりポイントは、「passenger-install-apache2-module」です。
以下のエラー
Your compiler failed with the exit status 4. This probably means that it ran out of memory. To solve this problem, try increasing your swap space: https://www.digitalocean.com/community/articles/how-to-add-swap-on-ubuntu-12-04

どうもメモリーが足らない模様(T_T)
t2.microがいけないのか?

以下を実行することにより無事に終わりました。
  sudo dd if=/dev/zero of=/swap bs=1M count=1024
  sudo mkswap /swap
  sudo swapon /swap


無事に終わったので以下を実行
sudo swapoff /swap
sudo rm -rf /swap


次はあまりはまるとまではいかなかったが、「RedmineのCSSや画像へのアクセスを許可」いう見出しで以下の設定をすると、逆に画面が崩れました。
<Directory "/var/lib/redmine/public">
  Require all granted
</Directory>


自分のはまりポイントは3つでした。
なんとかインストール完了。

「Redmine3.0でもいいよ」という人は、Redmine3.0のAMIを利用すれば簡単です。
http://blog.redmine.jp/articles/3_0/redmine-ami/