さくらのスタンダードサーバーにRailsをインストールしてみる。

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

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

突然Railsのインストールの話ですが、こないだの日記でおすすめした雑誌で、Web+DB PRESSの『Webサービス開発徹底攻略』を読んでて、インフラの話はすごくおもしろく読めるんだけど、Webの部分が正直ほとんどわからんので、クックパッドの話でも出てきていたRailsを入れてみようと思った。

なんでさくらのレンタルサーバーのスタンダードなんだって事だけど、Rubyが入っていればrootなしでもインストールできるらしいので、SSDとかIODRIVEとかがさらに流行ってきて、レンタルサーバーでもSSD当たり前~な時代がくれば、お金をかけれないとこでも、rootがない手頃なレンタルサーバーを使って開発環境が手軽に作れるじゃんという風に思ったので。
だが~SSDプランにはお試し期間がないのでスタンダードサーバーなのだ。

内容はほぼ参考サイトの情報をかき集めたものでしゅ~。
参考サイト
nyon2.net さくらインターネットにRuby on Railsをインストール
JAMぱん さくらインターネットでRuby on Railsする
さくらインターネットで、gem install すると「chown/chgrp: Operation not permitted 」と叱られる件の対応
がんちゃんのブログ さくらのレンタルサーバーにRuby on Rails 2.0.2をインストールする方法
asanono日記 InstantRailsの悪夢
RubyForge http://rubyforge.org/
ふにょい日記 さくらの共有サーバーにRubyGemsを入れてRuby/DBIを入れた時のメモ
Projeto: Vermelho さくらインターネットにRMagickインストールでerror code 71
tester7の日記 Railsを始めて一番最初にハマったこと

山ほど参考にしてます。
参考の参考だけどたけけんには大いに勉強になりまする。
とりあえず今のサーバーのrubyのバージョンを見るとこから。

%ruby --version
ruby 1.8.7 (2012-10-12 patchlevel 371) [i386-freebsd7]

参考サイトを見ながらサクサクとやってみる~っというのが失敗のもとだったのですけど、とりあえず流れも一緒に進めてみます。

%ftp http://rubyforge.org/frs/download.php/35283/rubygems-1.1.1.tgz
100% |***************************************************|   413 KB  175.15 KB/s    00:00 ETA
423308 bytes retrieved in 00:02 (175.15 KB/s)
%ruby setup.rb --prefix=$HOME
RubyGems 1.8.25 installed
mkdir -p /home/user/lib
mkdir -p /home/user/bin
mkdir -p /home/user/lib/rbconfig
mkdir -p /home/user/lib/rubygems
mkdir -p /home/user/lib/rubygems/commands

RubyGems installed the following executables:
/home/user/bin/gem18

インストール先を指定したり、とりあえずインストールするあたりは問題なくうまく行くのだけど。

%source $HOME/.cshrc
%rehash
%gem18 --version
1.1.1

railsを入れようとしてもエラーが出るのだ。

ERROR: While executing gem ... (Gem::RemoteSourceException)
HTTP Response 302 fetching http://gems.rubyforge.org/yaml

バージョンが古いのがダメだったみたいで、railsのインストールができないのだ。
新しいgemを入れる。
三浦マイルドじゃないが、検証作業すんなり終わったことなー!

まだまだ続きます。

%tar zxf rubygems-1.8.25.tgz
%cd rubygems-1.8.25
%ruby setup.rb --prefix=$HOME
RubyGems 1.8.25 installed
== 1.8.25/ 2013-01-24

%gem18 --version
1.8.25
%gem18 install rails --include-dependencies
INFO:  <code>gem install -y</code> is now default and will be removed
INFO:  use --ignore-dependencies to install only the gems you list

%gem18 install rails
Successfully installed rails-3.2.12

%rehash
%rails --version
Rails 3.2.12

インストールはこれでうまくいった、ふんふん。
と思うだろうが、うまく行かないのだ。
バージョンが新しすぎて参考サイトの参考ができないので、たけけんのスキルでは厳しい。
ただ当然指定してインストールすると古いものでもインストールできる。

%gem18 install rails -y -v 2.2.3
INFO:  <code>gem install -y</code> is now default and will be removed
INFO:  use --ignore-dependencies to install only the gems you list
Fetching: activesupport-2.2.3.gem (100%)
Fetching: activerecord-2.2.3.gem (100%)
Fetching: actionpack-2.2.3.gem (100%)
Fetching: actionmailer-2.2.3.gem (100%)
Fetching: activeresource-2.2.3.gem (100%)
Fetching: rails-2.2.3.gem (100%)
Successfully installed activesupport-2.2.3
Successfully installed activerecord-2.2.3
Successfully installed actionpack-2.2.3
Successfully installed actionmailer-2.2.3
Successfully installed activeresource-2.2.3
Successfully installed rails-2.2.3
%rehash
%rails --version
Rails 2.2.3

Railsのインストールはこれで終わりになるけど、ファイルの作成ができないみたいなので、流石にこのままでは終われない。
うまくいかなかった原因は何度もインストールしてしまったからのようだ。

%rails test
/home/myaccount/lib/ruby/gem/gems/rails-2.2.3/bin/../lib/rails_generator/options.rb:32:in <code>default_options': undefined method </code>write_inheritable_attribute' for Rails::Generator::Base:Class (NoMethodError)
from /home/myaccount/lib/ruby/gem/gems/rails-2.2.3/bin/../lib/rails_generator/base.rb:90
from /home/myaccount/lib/rubygems/custom_require.rb:36:in `gem_original_require'
from /home/myaccount/lib/rubygems/custom_require.rb:36:in `require'
from /home/myaccount/lib/ruby/gem/gems/rails-2.2.3/bin/../lib/rails_generator.rb:34
from /home/myaccount/lib/rubygems/custom_require.rb:36:in `gem_original_require'
from /home/myaccount/lib/rubygems/custom_require.rb:36:in `require'
from /home/myaccount/lib/ruby/gem/gems/rails-2.2.3/bin/rails:13
from /home/myaccount/lib/ruby/gem/bin/rails:23:in `load'
from /home/myaccount/lib/ruby/gem/bin/rails:23

こんな感じで作成ができないんですわ。
削除するとうまくいくようなので、サクっちゃうぞー!

%gem18 uninstall actionmailer actionpack activerecord activeresource activesupport rack rails

Select gem to uninstall:
1. actionmailer-2.2.3
2. actionmailer-3.2.12
3. All versions
&gt; 3
Removing rails
Successfully uninstalled rails-2.2.3
Successfully uninstalled rails-3.2.12

この辺は適当にやってみたけど、上手くいった。

%rails test
create
create  app/controllers
create  app/helpers
~~~~~省略~~~~~~~
create  public/javascripts/controls.js
create  log/test.log

できた~
あとはコピペになっちゃうので、割愛します。
たけけんがインストールしたバージョンではpublic/.htaccessはREADMEからコピーするようで、
.htaccessとconfig/environment.rbの設定をしたら、www内にシンボリックリンクを張って終わりです!

久しぶりだと、何か疲れたなあ。

Railsの方はインストールが終わっただけで、あとはデータベースを作ったりとかいろいろありますが、とりあえずここまででいいかな。
続きはまた今度やってみます。

SSDプランを使ってRailsを作ってしまえばサーバーの保守運用は要らないくなるので、かなりコスト削減できるんじゃないかな~と思ったりするんですけど、開発環境ってそういうことじゃないなのかな?

 

あ、あとですね。コンタクトフォームやコメント欄から問い合わを貰ってますが、諸事情があって返事が遅れてます、すいません。

Related Posts


投稿者: Takeken

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

「さくらのスタンダードサーバーにRailsをインストールしてみる。」への2件のフィードバック

コメントを残す

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