さくらの新スタンダードプランのサーバーにRailsを入れて、Redmineをインストールした。

2019年11月10日追記
現行のレンタルサーバーで記事をリメイクしてみたのでよかったらこちらもどうぞ
さくらのレンタルサーバーにRailsを入れてブログを作ってみた

前日の日記で敗北に終わったたけけんですが、まだだ、まだ終わらんよ!とつづけた甲斐あって、バージョンアップしたサーバーでもredmineのインストールができました。前回インストールしたバージョンは1.4系で今回のRedmineは2.4系です。

3/8追記 いきなりこのページに来た方へ
rubyとgemは新サーバーにはデフォルトでインストールされていますが、どちらも自前でインストールしたもので進めていますです。インストールして.cshrcを編集して環境変数をいじるとこは端折られていますんでご注意ください。

3/9追記
redmineは動くものの、railsでのアプリ作成については問題があり、FreeBSD8・9 amd64版にRubyGems libv8をインストールがうまくできないっていう問題を解決しないとどうにもできなさそうだ。(もちろんrootがあれば解決できる)

2014/11/23追記
Node.jsをつかってRoot権限なしでもRailsが使えることが確認できました。
さくらのレンサバにRails libv8とJava script runtimeの問題が解決できた

 

失敗したところも載せているので、今回はちょっと長めです。

ひとまずgemでインストールしたものを全サクします。

gem list | cut -d" " -f1 | xargs gem uninstall -aIx

とくにバージョンを指定しないで、railsをインストールしてみると。

% gem install rails
% rails -v
Rails 4.0.3

やっぱりこうらしい。

 

まあ、とりあえずやってみよう。

% rails new testrails -d mysql

productを修正する。

% vi config/database.yml
% bundle install --without development test postgresql sqlite

Your bundle is complete!
Gems in the groups development, test, postgresql and sqlite were not installed.
Use bundle show [gemname] to see where a bundled gem is installed.

 

問題なさそうなんだけどね、ガシガシ進めていくとドツボにはまっていってどうにも解決できなくなるのです。

therubyracerってのがちょっとあれならしく。

% bundle exec rake db:migrate RAILS_ENV=production
rake aborted!
Could not find a JavaScript runtime. See https://github.com/sstephenson/execjs for a list of available runtimes.

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

どんな感じに嵌るかということを一応書いておきます。
まずは記述を外します。

vi Gemfile
# See https://github.com/sstephenson/execjs#readme for more supported runtimes
gem 'therubyracer', platforms: :ruby

ちょっと詰まったところは飛ばしますが、こうやるとlibv8をインストールできます。

% gem install libv8 -v '3.16.14.3' -- --with-system-v8
Building native extensions with: '--with-system-v8'
This could take a while...
Successfully installed libv8-3.16.14.3
Parsing documentation for libv8-3.16.14.3
Installing ri documentation for libv8-3.16.14.3
Done installing documentation for libv8 after 0 seconds
1 gem installed

だけど、失敗しちゃうので、こうやってみました。

% gem install libv8 -v '3.3.10.4'
Fetching: libv8-3.3.10.4.gem (100%)
Building native extensions.  This could take a while...
Successfully installed libv8-3.3.10.4
Parsing documentation for libv8-3.3.10.4
Installing ri documentation for libv8-3.3.10.4
Done installing documentation for libv8 after 91 seconds
1 gem installed

調べていくと、libv8のサポートからFreeBSDが外れるのでダメらしいのさ。

参考サイト
mk-mode blog さん FreeBSD 9.0 – RubyGems libv8 インストール!

参考サイトさんの内容には間違いないんです。

こっちでもリビルドはできたのです。

% pwd
/home/account/lib/ruby/gem/gems/libv8-3.3.10.4/lib/libv8/build/v8

% vi SConstruct

    'os:freebsd': {
      'CPPPATH' : ['/usr/local/include'],
      'LIBPATH' : ['/usr/local/lib'],
      #'CCFLAGS':      ['-ansi'],
      'CCFLAGS':      ['-ansi', '-fPIC'],
      'LIBS': ['execinfo']

ごらんのように、sconsもインストールできました。

http://prdownloads.sourceforge.net/scons/scons-2.3.1.tar.gz

% python setup.py build
% python setup.py install --prefix=$HOME

うまく$HOME/binに入ったみたいなので、ビルドもできました。

% scons arch=x64

が。

エラー内容を見ると、どうもこりゃあ何も出来なさそうだってことに。

src/platform-freebsd.cc:46:56: error: execinfo.h: No such file or directory
src/platform-freebsd.cc: In static member function 'static int v8::internal::OS::StackWalk(v8::internal::Vector<v8::internal::OS::StackFrame>)':
src/platform-freebsd.cc:326: error: 'backtrace' was not declared in this scope
src/platform-freebsd.cc:328: error: 'backtrace_symbols' was not declared in this scope
scons: *** [obj/release/platform-freebsd.o] Error 1
scons: building terminated because of errors.

 

ごめんなさい。こんな時どうすればいいか分からないの。
VPS使ったらいいと思うよ。

なんて終わろうかなって思ったんだけど、たけけんはまだ終わらんのでした。

ってことでRails4はやめてRails3系にして、Redmine2系に進む方向にしました。

railsのあんいんすとーるをお忘れなく。

まずはrails3系のインストールから。

% gem install rails -v 3.2.12

railsのインストールじたいは問題ないと思います。

そしてredmineをダウンロードしてきて、redmineのディレクトリへ移動します。

config/databes.ymlとconfig/enbrioment.rbを編集して、rakeしますね。
そこでエラーがでました。
ここはもしかしたら環境によるかもしれないんだけど、一応載せておきます。

エラーはこんな感じ。

syck has been removed, psych is used instead
Some gems may need to be installed or updated.
Please run bundle install --without development test.

こんなことも試したけど上手くいかず。

% gem install psych
Fetching: psych-2.0.4.gem (100%)
Building native extensions.  This could take a while...
Successfully installed psych-2.0.4
Parsing documentation for psych-2.0.4
Installing ri documentation for psych-2.0.4
Done installing documentation for psych after 1 seconds
1 gem installed

% gem install syck
Fetching: syck-1.0.1.gem (100%)
Building native extensions.  This could take a while...
Successfully installed syck-1.0.1
Parsing documentation for syck-1.0.1
Installing ri documentation for syck-1.0.1
Done installing documentation for syck after 1 seconds
1 gem installed

 

解決策はこうでした。

% gem uninstall psych

% echo 'gem "psych"' >> Gemfile
% bundle install --without development test postgresql sqlite
Your bundle is complete!

 

ではラストスパートガンバンベ。

鍵を作り。

% bundle exec rake generate_session_store

Note: The rake task generate_session_store has been deprecated, please use the replacement version generate_secret_token

テーブルを作ります。

% bundle exec rake db:migrate RAILS_ENV=production

デフォルトデータを作ります。

 bundle exec rake redmine:load_default_data RAILS_ENV=production

Select language: ar, az, bg, bs, ca, cs, da, de, el, en, en-GB, es, et, eu, fa, fi, fr, gl, he, hr, hu, id, it, ja, ko, lt, lv, mk, mn, nl, no, pl, pt, pt-BR, ro, ru, sk, sl, sq, sr, sr-YU, sv, th, tr, uk, vi, zh, zh-TW [en] ja
====================================
Some configuration data is already loaded.

パーミッションを設定しときます。

% chmod -R 755 files log tmp

手抜きではござらんよ。

疲れたんでござる。

 

では実行します。ドキドキしますね!

mongrelではまだ検証していません。

% ruby script/rails server webrick -e production
=> Booting WEBrick
=> Rails 3.2.16 application starting in production on http://0.0.0.0:3000
=> Call with -d to detach
=> Ctrl-C to shutdown server
[2014-03-07 15:19:30] INFO  WEBrick 1.3.1
[2014-03-07 15:19:30] INFO  ruby 2.1.1 (2014-02-24) [x86_64-freebsd9.1]
[2014-03-07 15:19:30] INFO  WEBrick::HTTPServer#start: pid=86797 port=3000

だがしかし、動くというのは確認できたのでOKなんです。

sconsのビルドとか、今回初めて知ったので、いろいろ勉強になったわ。

ruby知らないんだけどね。

 

Related Posts


投稿者: Takeken

インターネット利用者のITリテラシーを向上したいという設定の2次元キャラです。 サーバー弄りからプログラミングまで手を付けた自称エッセイストなたけけんの物語。

「さくらの新スタンダードプランのサーバーにRailsを入れて、Redmineをインストールした。」への1件のフィードバック

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です