Rubyの魔神 このページをアンテナに追加 RSSフィード

   「Ruby」は宝石の魔神のイメージ(The Jinn of the Ruby)
   [VB] [VB6] [C#] [Android] [電子工作] [個人メモ] [仕事メモ] [アイデア] [TstLink] [CE] [LTSA] [自動化] [Qt] [OCaml] [TOOLS]
   [3Dプリンタ] [RAA] [Forge]   [機能別索引] [逆引きRuby] [マニュアル] [るびま] [標準ライブラリ] [るりまサーチ] [Try! Ruby] [PRaggerまとめ] [ピジョン・ブラッド]
   [Rubyコーディング規約] [プログラミングのオキテ] [Rubyist SNS] [TOOLBIS]
   [RubyネットワークProg] [druby] [コードなにがし] [RDocテンプレ] [Ruby/Tkサンプル]
   [WAVE] [Xperia] [github] [twitterなど] [Java] [EA] [マクロ]

2007-05-07

Rubygemsをユーザー権限でインストールする方法(Sakura サーバにRubygemsをインストール)

08:28 | Rubygemsをユーザー権限でインストールする方法(Sakura サーバにRubygemsをインストール) - Rubyの魔神 を含むブックマーク はてなブックマーク - Rubygemsをユーザー権限でインストールする方法(Sakura サーバにRubygemsをインストール) - Rubyの魔神 Rubygemsをユーザー権限でインストールする方法(Sakura サーバにRubygemsをインストール) - Rubyの魔神 のブックマークコメント

サクラインターネットスタンダードプランtelnetが使えるけど、root権限は使えない。

ユーザー権限だけでレンタルサーバーにRuby On Railsを入れてredMineを動かしてみます。

まず最初にRubyGemsを入れます。

DL先 http://rubyforge.org/frs/?group_id=126

3.2 Installing RubyGems in a User Directory

RubyGems User Guide | RubyGems Manuals

以下を行います。

※以下のフォルダは自分の環境に合わせてください。

/home/mygemrepository   リポジトリを保存するフォルダ

/home/mystuff      rubygemsをインストールするフォルダ

$ export GEM_HOME=/home/mygemrepository
$ ruby setup.rb config --prefix=/home/mystuff
$ ruby setup.rb setup
$ ruby setup.rb install

サクラインターネット(スタンダードプラン)ではシェルcshなので

exportはsetenvにします。

shell /bin/csh

$ setenv GEM_HOME /home/mygemrepository
$ ruby setup.rb config --prefix=/home/mystuff
$ ruby setup.rb setup
$ ruby setup.rb install

そのまま起動すると「gem:9:in `require': no such file to load -- rubygems (LoadError)」とエラーになるのでライブラリ用検索パスを追加します。

404 Not Found 参考

setenv RUBYLIB /home/mystuff/lib/ruby/site_ruby/1.8


ルートフォルダの「.cshrc」 ファイルに以下を追記

set path = (/sbin /bin /usr/sbin /usr/bin /usr/games /usr/local/sbin /usr/local/bin /usr/X
11R6/bin $HOME/bin /home/mygemrepository/bin /home/mygemrepository/bin )
setenv  GEM_HOME /home/mygemrepository
setenv RUBYLIB /home/mystuff/lib/ruby/site_ruby/1.8

最後に以下を実行

gem update --system

Sakura サーバに Sqlite3 をインストールしてみる

10:20 | Sakura サーバに Sqlite3 をインストールしてみる - Rubyの魔神 を含むブックマーク はてなブックマーク - Sakura サーバに Sqlite3 をインストールしてみる - Rubyの魔神 Sakura サーバに Sqlite3 をインストールしてみる - Rubyの魔神 のブックマークコメント

サクラインターネットSQLサーバーを使う場合は不要です。

%wget http://sqlite.org/sqlite-3.x.x.tar.gz %tar xzvf sqlite-3.x.x.tar.gz %cd sqlite-3.x.x %./configure --prefix=$HOME %make %make install

ハタさんのブログ : Sakura サーバに Sqlite3 をインストールしてみる

こちらを参考に

wget http://sqlite.org/sqlite-3.3.17.tar.gz
tar xzvf sqlite-3.3.17.tar.gz
cd sqlite-3.3.17
./configure --prefix=$HOME
make
make install

Sakura サーバに sqlite3-ruby をインストールしてみる

10:28 | Sakura サーバに sqlite3-ruby をインストールしてみる - Rubyの魔神 を含むブックマーク はてなブックマーク - Sakura サーバに sqlite3-ruby をインストールしてみる - Rubyの魔神 Sakura サーバに sqlite3-ruby をインストールしてみる - Rubyの魔神 のブックマークコメント

サクラインターネットSQLサーバーを使う場合は不要です。

まずgemトライエラーが出る

%gem install sqlite3-ruby
Select which gem to install for your platform (i386-freebsd6)
 1. sqlite3-ruby 1.2.1 (mswin32)
 2. sqlite3-ruby 1.2.1 (ruby)
 3. sqlite3-ruby 1.2.0 (mswin32)
 4. sqlite3-ruby 1.2.0 (ruby)
 5. Skip this gem
 6. Cancel installation
> 2
Building native extensions.  This could take a while...
ERROR:  While executing gem ... (Gem::Installer::ExtensionBuildError)
    ERROR: Failed to build gem native extension.

ruby extconf.rb install sqlite3-ruby
checking for sqlite3.h... yes
checking for sqlite3_open() in -lsqlite3... yes
creating Makefile

make
cc -I. -I. -I/usr/local/lib/ruby/1.8/i386-freebsd6 -I. -DHAVE_SQLITE3_H -I/usr/local/include -fPIC -O2 -fno-strict-aliasing -pipe    -fPIC -c sqlite3_api_wrap.c
cc -shared -Wl,-soname,sqlite3_api.so -L'/usr/local/lib' -Wl,-R'/usr/local/lib' -L'/usr/local/lib' -Wl,-R'/usr/local/lib' -o sqlite3_api.so sqlite3_api_wrap.o  -Wl,-R -Wl,/usr/local/lib -L/usr/local/lib -L. -lruby18 -lsqlite3  -lcrypt -lm  -pthread  -lc

make install
/usr/bin/install -c -o root -g wheel -m 0755 sqlite3_api.so /home/xxx/xxx/xxx/xxxrepo/gems/sqlite3-ruby-1.2.1/lib
install: /home/xxx/xxx/xxx/xxxrepo/gems/sqlite3-ruby-1.2.1/lib/sqlite3_api.so: chown/chgrp: Operation not permitted
*** Error code 71

Stop in /home/xxx/xxx/xxx/xxxrepo/gems/sqlite3-ruby-1.2.1/ext/sqlite3_api.

あっさりとあきらめて以下の方法でインストール

sqlite3-rubyインストール。rubygemsからのインストールには失敗したので、setup.rbから。

その他雑多なこと(tDiary版)(2007-04)
wget http://rubyforge.org/frs/download.php/17097/sqlite3-ruby-1.2.1.tar.gz
tar zxf sqlite3-ruby-1.2.1.tar.gz
cd sqlite3-ruby-1.2.1
ruby setup.rb config --prefix=/home/garyo -- --with-sqlite3-dir=$HOME  2>&1
ruby setup.rb setup 2>&1
ruby setup.rb install 2>&1

Sakura サーバにRuby on Railsをインストール

11:06 | Sakura サーバにRuby on Railsをインストール - Rubyの魔神 を含むブックマーク はてなブックマーク - Sakura サーバにRuby on Railsをインストール - Rubyの魔神 Sakura サーバにRuby on Railsをインストール - Rubyの魔神 のブックマークコメント

gem install rails

質問には全てY

%gem install rails
Install required dependency rake? [Yn]  Y
Install required dependency activesupport? [Yn]  Y
Install required dependency activerecord? [Yn]  Y
Install required dependency actionpack? [Yn]  Y
Install required dependency actionmailer? [Yn]  Y
Install required dependency actionwebservice? [Yn]  Y

Sakura サーバでRailsを起動する

13:38 | Sakura サーバでRailsを起動する - Rubyの魔神 を含むブックマーク はてなブックマーク - Sakura サーバでRailsを起動する - Rubyの魔神 Sakura サーバでRailsを起動する - Rubyの魔神 のブックマークコメント

さくらレンタルサーバRuby on Railsを入れる手順

ヤドカリデンキ商会(第一倉庫)

上記を参考に

1.適当フォルダで以下を実行

rails hello

2.シンボリックリンクを作成

%ln -s [railasを作成したフォルダ] /home/ID/www/[公開するフォルダ]

3.hello/publicの.htaccessを書き換え

下の3行をコメントアウト

AddHandler fastcgi-script .fcgi

AddHandler cgi-script .cgi

Options +FollowSymLinks +ExecCGI

4.config/environment.rbを書き換え

下の2行を追加

  ※「/home/mystuff」はRubygemsをインストールしたフォルダ

$LOAD_PATH.push("/home/mystuff/lib/ruby/site_ruby/1.8")

$LOAD_PATH.push("/home/mystuff/lib/ruby")

5.サクラサーバーデータベース設定画面

  https://secure.sakura.ad.jp/rscontrol/

  「データベースの設定」を開き以下を調べる

データベース ユーザ名 / データベース名 ※1

データベース サーバ ※2

データベース 接続パスワード ※3 

6.hello/config の 「database.yml」を開く

 上記の※1、※2、※3を書き換える。

development:

adapter: mysql

database: hello_development

username: ※1

password: ※3

host: ※2

7.ブラウザで以下を開く

http://[ドメイン].sakura.ne.jp/[公開フォルダ]/hello/public/index.html

以下が表示される。

Welcome aboard

You’re riding the Rails!

さくらインターネットでSubversionのインストール

14:52 | さくらインターネットでSubversionのインストール - Rubyの魔神 を含むブックマーク はてなブックマーク - さくらインターネットでSubversionのインストール - Rubyの魔神 さくらインターネットでSubversionのインストール - Rubyの魔神 のブックマークコメント

さくらインターネットSubversionの補足。

さくらインターネットでSubversionの補足。 (SaikyoLine.jp)

下記の手順をそのまま実行。

$ mkdir $HOME/local/src
$ cd $HOME/local/src
$ wget http://subversion.tigris.org/downloads/subversion-1.4.3.tar.bz2
$ wget http://ftp.kddilabs.jp/infosystems/apache/apr/apr-0.9.13.tar.bz2
$ wget http://ftp.kddilabs.jp/infosystems/apache/apr/apr-util-0.9.13.tar.bz2
$ tar jxf subversion-1.4.3.tar.bz2
$ cd subversion-1.4.3
$ tar jxf ../apr-0.9.13.tar.bz2
$ mv apr-0.9.13 apr
$ tar jxf ../apr-util-0.9.13.tar.bz2
$ mv apr-util-0.9.13 apr-util
$ ./configure --prefix=$HOME/local
$ make && make install



$ mkdir $HOME/svn-repos
$ $HOME/local/bin/svnadmin create $HOME/svn-repos
さくらインターネットでSubversionの補足。 (SaikyoLine.jp)

%vi .cshrc でsvnパスを設定

/home/ID/local/bin をpathに追加しておく


さくらインターネットでredMineをインストール

16:48 | さくらインターネットでredMineをインストール - Rubyの魔神 を含むブックマーク はてなブックマーク - さくらインターネットでredMineをインストール - Rubyの魔神 さくらインターネットでredMineをインストール - Rubyの魔神 のブックマークコメント

1.フォルダを作ってrubyコンソールから redmimeをDLフォルダは自分の好きな所をどうぞ)

mkdir redmine
cd redmine

svn checkout svn://rubyforge.org/var/svn/redmine/trunk .

2.redmineフォルダのconfig\database.ymlを書き換える(パスワードは変える)

サクラサーバーデータベース設定画面

production:
  adapter: mysql
  username: ※1
  password: ※3
  host: ※2

3.以下を実行(redmineフォルダ内で実行)

rake db:migrate RAILS_ENV="production"
rake load_default_data RAILS_ENV="production"

言語を聞かれるので、ja を選択

4.redmineフォルダ内の以下のメール設定に自分のSMTPアカウントを設定

config/environment.rb

# SMTP server configuration
config.action_mailer.smtp_settings = {
:address => "smtp.example.com",
:port => 25,
}

ここまで来て困った。何を起動すればいいのだろうか?

public/index.html存在しない。


redmine/public の「dispatch.cgi.example」を「dispatch.cgi」に変更

dispatch.cgiの先頭に以下をつける

-------- ここから ------------
> #!/bin/sh
> HOME=ユーザディレクトリ
> VER=1.8
> ARCH=システム名(おそらく i386-freebsd4)
> 
> XLIB=$HOME/lib/ruby
> XSLIB=$XLIB/site_ruby
> 
> export RUBYLIB=$XSLIB/$VER:$XSLIB/$VER/$ARCH:$XSLIB:$XLIB/$VER:$XLIB/$VER/$ARCH
> export LD_LIBRARY_PATH=$HOME/lib:/usr/local/lib:/usr/lib:/lib
> export GEM_HOME=最初に指定したGEMのインストール先(レポジトリ?)
> export RAILS_ENV=production
>
> exec ruby -S -Ku -x $0 "$@"
> #!/usr/local/bin/ruby
> ------- ここまで -------------

dispatch.cgiに実行権限をつける

ここまでやって以下を開くと

http://[ドメイン名]/[フォルダ]/redmine/public/

以下のエラー表示が出るところまで来ました。

 Mysql::Error in WelcomeController#index
Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)
RAILS_ROOT: ../config/..

データベースとの接続エラーのようなので

database.ymlの「production:」の設定を「development:」「test:」にもコピーした所

動くようになりました。(※4)

↓こちらです。

http://garyo.sakura.ne.jp/rails/redmine/public/


注記 ※4

これは以下が原因だったようです。上記「dispatch.cgi」に追記しました。

さすがにこれは知らないとわからないです><

railsアプリは開発・テスト・製品という三つの動作モードがあります。

指定無しの場合開発モードで動作します。

製品モードで動作させるには前回のメールの7番の処理、export処理群の最後に

export RAILS_ENV=production

fastcgiを使うと早くなるらしいのだが調査中

単純に.htaccess内のdispatch.cgiをdispatch.fcgiにするとdispatch.fcgiをテキストファイルとして開いた。

Apacheに.fcgicgiプログラムだと設定する必要がありそう。

基本的にfcgi存在しないのが問題みたいだ。

さくらインターネットfastCGIを使うのは難しそう。