ALMiniumの導入 #2

作成日:2013/09/05
最終更新日:2020/07/05

ALMiniumの導入 #2

作成日:2013/09/05
最終更新日:2020/07/05

ALMiniumの導入 #2

クリーンインストールしたCentOS6.4にALMinium v2.2.4-4を導入していましたがうまく動作しません。 Versionが上がったことで問題が発生したのでしょうか?

Apacheの起動時にエラー

以下のエラーが出てApacheが起動しません。

コマンド1. Apacheの起動時にエラー
httpd: Syntax error on line 221 of /etc/httpd/conf/httpd.conf: 
Syntax error on line 1 of /etc/httpd/conf.d/redmine.conf: Cann
ot load /usr/lib64/ruby/gems/1.9.1/gems/passenger-4.0.14/libou
t/apache2/mod_passenger.so into server: /usr/lib64/ruby/gems/1
.9.1/gems/passenger-4.0.14/libout/apache2/mod_passenger.so: ca
nnot open shared object file: No such file or directory

どうやらredmine.confに記載されたpassengerの共有ライブラリへのパスが間違っているようです。以下のように/etc/httpd/conf.d/redmine.confを修正することで回避できました。

ソース1. /etc/httpd/conf.d/redmine.confの修正
--- redmine.conf.org	2013-09-04 23:34:23.466071310 +0900
+++ redmine.conf	2013-09-04 23:35:32.034992320 +0900
@@ -1,4 +1,4 @@
-LoadModule passenger_module /usr/lib64/ruby/gems/1.9.1/gems/
passenger-4.0.14/libout/apache2/mod_passenger.so
+LoadModule passenger_module /usr/lib64/ruby/gems/1.9.1/gems/
passenger-4.0.14/buildout/apache2/mod_passenger.so
 PassengerRoot /usr/lib64/ruby/gems/1.9.1/gems/passenger-4.0.14
 PassengerRuby /usr/bin/ruby

Gemのエラー

以下のログからApacheは起動したのだと思われます。

コマンド2. Apacheの起動ログ
[root@ao-oribe ~]# service httpd restart
httpd を停止中:                                            [失敗]
httpd を起動中:                                            [  OK  ]
[root@ao-oribe ~]# 

ALMiniumにはHTTPSでアクセスするように./smelt時に指定していたのでHTTPSでアクセスします。また、VirtualHostでアクセスするので、DNSサーバーも合わせて設定しておきます。今回はhttps://alminium.ao-oribe.localhost/にアクセスしました。

アクセスしたところ残念ながらエラー画面になりました。重要そうなエラーは以下の通りです。

コマンド3. Gemのエラー
Could not find gem 'thin (>= 0) ruby' in the gems availab
le on this machine. (Bundler::GemNotFound)

thinをgemでインストールしてみることにします。

コマンド4. thinのインストール
[root@ao-oribe ~]# gem install thin
Fetching: thin-1.5.1.gem (100%)
Building native extensions.  This could take a while...
Successfully installed thin-1.5.1
1 gem installed
Installing ri documentation for thin-1.5.1...
Installing RDoc documentation for thin-1.5.1...
[root@ao-oribe ~]# 

同様に以下のGemも足りないようです。

simplecov			(>= 0)
fastercsv			(~> 1.5.0)
rmagick				(>= 2.0.0)
pg				(>= 0.11.0) ... postgresql用のドライバ
sqlite3				(>= 0) ... sqlite用のドライバ
mysql				(~> 2.8.1) ... mysql用のドライバ
spork				(>= 0)
database_cleaner		(>= 0)
yard				(>= 0)
shoulda				(~> 2.11)
ruby-prof			(>= 0)
selenium-webdriver		(>= 0)
timecop				(>= 0)
test-unit			(>= 0)
mocha				(~> 0.13.3)
rake-compiler			(>= 0)
rspec				(~> 2.11.0)
rspec-rails			(~> 2.11.0)
cucumber			(>= 0)
cucumber-rails			(>= 0)
simplecov-rcov			(>= 0)
simplecov-rcov-text		(>= 0)
inifile				(>= 0)
chronic				(>= 0)
ZenTest				(= 4.5.0)
autotest-rails			(>= 0)
culerity			(>= 0)
gherkin				(= 2.6.8)
hoe				(= 1.5.1)
poltergeist			(~> 0.6.0)

pgはpostgresql用のgemらしい。postgresqlが入っていないとgemをインストールできないようなのでyumでインストールする。

コマンド5. PostgreSQLのインストール
[root@ao-oribe ~]# yum -y install postgresql-devel.x86_64

同様にsqliteもyumでインストールしておかないといけないようです。

コマンド6. SQLiteのインストール
[root@ao-oribe ~]# yum -y install sqlite-devel

mysqlやshoulda、mochaは最新を入れても認識されないので以下のコマンドで古いバージョンを入れる。

コマンド7. 古いVersionのGemのインストール
[root@ao-oribe ~]# gem install mysql -v '2.8.1'
[root@ao-oribe ~]# gem install shoulda -v '2.11'
[root@ao-oribe ~]# gem install mocha -v '0.13.3'
[root@ao-oribe ~]# gem install rspec -v '2.11.0'
[root@ao-oribe ~]# gem install rspec-rails -v '2.11.0'
[root@ao-oribe ~]# gem install ZenTest -v '4.5.0'
[root@ao-oribe ~]# gem install gherkin -v '2.6.8'
[root@ao-oribe ~]# gem install hoe -v '1.5.1'
[root@ao-oribe ~]# gem install poltergeist -v '0.6.0'

なお、mochaを入れる際にredcarpetが無いとエラーが出たので、gemでredcarpetを入れる。

rake-compilerを入れようとしたらgem自体のアップデートを求められた

コマンド8. Gemのアップデート
[root@ao-oribe ~]# gem update --system

gherkinのversionのせいでcucumber-railsがエラーになる模様。2.12.0を求められたので、これをインストールしてみる。

コマンド9. gherkinのインストール
[root@ao-oribe ~]# gem install gherkin -v '2.12.0'

gemがconfrictしたので諦める。