挑戦!radiant

Rubyを使ったのCMSとしてRadiantに挑戦。

環境は、会社のmandheling君。OSは、CentOS5.1。
パッケージ選択は通常のサーバ設定を選択したもの。
ruby関連が入っていなかったので、

# yum install ruby*

でインストール。
gemsは、
http://rubyforge.org/frs/?group_id=126
から
# wget http://rubyforge.org/frs/download.php/29516/rubygems-1.0.0.tgz
で、バージョン1.0.0を入手
# tar -zxvf rubygems-1.0.0.tgz
で解凍
# cd rubygems-1.0.0
# ruby setup
でインストール
# gem update --system
で更新
参照は、http://tobysoft.net/wiki/index.php?Ruby%2FRubyGems%2Fupdate%A4%CB%A4%C4%A4%A4%A4%C6

で、radiantのインストール
# gem install --include-dependencies radiant

次にWebminからMySQLにradiant-dev radiant-testの2つのDBを追加して、ユーザも追加

プロジェクト?を作成。
# cd /home/radiant
# radiant castle
# cd castle
# vi config/database.yml でdbの設定を登録

radiant castleを行ったときに
3. Run the database bootstrap rake task:

% rake production db:bootstrap

(If you would like bootstrap your development database run `rake
development db:bootstrap`.)
と書かれているので、やってみる。
http://journal.mycom.co.jp/articles/2006/09/16/radiant2/002.htmlによると
 ./script/setup_database productionと書かれているが、バージョンが異なるので
 最近変わったのかな?script/の下にsetup_databaseもないし)

# rake development db:bootstrap
(in /home/radiant/castle)
rake aborted!
No such file or directory - /tmp/mysql.sock

(See full trace by running task with --trace)

?? mysqlの設定を見ると/var/lib/mysql/mysql.sockとなっている。

    • traceをつけて見ろと書かれているので、やってみたけど。

どこかにmysql.sockのパス設定は無いのか?
# rake --trace development db:bootstrap
(in /home/radiant/castle)

Invoke development (first_time)

Execute development

Invoke environment (first_time)

Execute environment

rake aborted!
No such file or directory - /tmp/mysql.sock
/usr/lib/ruby/gems/1.8/gems/radiant-0.6.4/vendor/rails/activerecord/lib/active_record/vendor/mysql.rb:107:in `initialize'
/usr/lib/ruby/gems/1.8/gems/radiant-0.6.4/vendor/rails/activerecord/lib/active_record/vendor/mysql.rb:107:in `new'

で、ググってみたら
socket: /var/lib/mysql/mysql.sock
をdatabase.ymlに追加せよとあったので、下記の様に修正

development:
adapter: mysql
database: radiant_dev
username: xxxxxxxxxxx
password: xxxxxxxxx
host: localhost
socket: /var/lib/mysql/mysql.sock

で、再実行

# rake development db:bootstrap
(in /home/radiant/castle)
rake aborted!
#28000Access denied for user 'radiant01'@'localhost' (using password: YES)

今度は、ユーザが駄目?
Webminで、データベースの許可とホストの許可にradiant-devとlocalhostを追加
パスワードを修正して再実行で

# rake development db:bootstrap
(in /home/radiant/castle)
Extensions cannot be used until Radiant migrations are up to date.
This task will destroy any data in the database. Are you sure you want to
continue? [yn] y <−yを入力

== CreateRadiantTables: migrating =============================================

    • create_table("config", {:force=>true})

-> 0.1207s
:
:

Create the admin user (press enter for defaults).
Name (Administrator):
Username (admin):
Password (radiant):  <=いつものパスワードを入力

Initializing configuration.......OK

Select a database template:
1. Empty
2. Simple Blog
3. Styled Blog
[1-3]: 3

Creating Snippets....OK
Creating Pages....OK
Creating Layouts....OK
Creating Page parts....OK

Finished.

となった。これで何とかなる?
# ./script/server -e development
=> Booting WEBrick...
=> Rails application started on http://0.0.0.0:3000
=> Ctrl-C to shutdown server; call with --help for options
[2007-12-21 19:29:49] INFO WEBrick 1.3.1
[2007-12-21 19:29:49] INFO ruby 1.8.5 (2006-08-25) [i386-linux]
[2007-12-21 19:29:49] INFO WEBrick::HTTPServer#start: pid=29702 port=3000

で、ブラウザからhttp://xxxxxxxx:3000/でアクセス ->スタイルシートがみつかんないよぉー
管理者画面は、/admin

ちなみに、サーバをデーモン起動するには、
./script/server -e development -d
です。