ユーザ用ツール

サイト用ツール


ruby:rubygems:server

文書の過去の版を表示しています。


Ruby - 共有サーバー等でのRubyGemsインストール

私が利用している「さくらインターネット」での、RubyGemsによるモジュールのインストール方法。
ここのレンタルサーバーではスタンダードプラン以上であればSSHを使ったシェルログインが利用できる。

1. RubyGems用の作業ディレクトリを作成する

% mkdir -p ~/local/src

2. RubyGems本体をダウンロードし、解凍する。

% cd ~/local/src
% wget http://rubyforge.org/frs/download.php/76073/rubygems-1.8.24.tgz
% tar xzvf rubygems-1.8.24.tgz

※最新のバージョンはここで確認を。

3. RubyGems本体をインストールする。

% cd rubygems-1.8.24
% ruby setup.rb config --prefix=$HOME/local

4. 環境設定ファイルを開き環境変数を設定する。

% vi ~/.cshrc

# $FreeBSD: src/share/skel/dot.cshrc,v 1.14.6.1 2008/11/25 02:59:29 kensmith Exp $
#
# .cshrc - csh resource script, read at beginning of execution by each shell
#
# see also csh(1), environ(7).
#

alias h         history 25
alias j         jobs -l
alias la        ls -a
alias lf        ls -FA
alias ll        ls -lA

# A righteous umask
umask 22

set path = (/sbin /bin /usr/sbin /usr/bin /usr/local/sbin /usr/local/bin $HOME/bin $HOME/local/bin)

setenv  EDITOR  vi
setenv  PAGER   more
setenv  BLOCKSIZE       K
setenv  PKG_DBDIR       ~/db/pkg
setenv  RUBYLIB $HOME/local/lib
setenv  GEM_HOME        $HOME/local/lib/rubygem
setenv  RB_USER_INSTALL true

if ($?prompt) then
        # An interactive shell -- set some stuff up
        set filec
        set history = 100
        set savehist = 100
        set mail = (/var/mail/$USER)
        if ( $?tcsh ) then
                bindkey "^W" backward-delete-word
                bindkey -k up history-search-backward
                bindkey -k down history-search-forward
        endif
endif

5. 環境変数の設定を反映させる。

% source ~/.cshrc

6. あとは通常通りインストールを行う。

(環境変数RB_USER_INSTALLをtrueにしてから実行すること)

% setenv RB_USER_INSTALL true
% gem install hoge

7. スクリプト側での設定も併せて行う。

ライブラリの場所を指定してやらないと動かないようなので、インストールしたライブラリのうち利用するものの場所を教えてやる必要がある。

#!/usr/bin/ruby
# coding: utf-8

Dir.chdir( File.dirname( $0 ) )

$LOAD_PATH.push( '/home/[USER_NAME]/local/lib' );
$LOAD_PATH.push( '/home/[USER_NAME]/local/lib/rubygem/gems/libraryA-X.X.X/lib' );
$LOAD_PATH.push( '/home/[USER_NAME]/local/lib/rubygem/gems/libraryB-X.X.X/lib' );
$LOAD_PATH.push( '/home/[USER_NAME]/local/lib/rubygem/gems/libraryC-X.X.X/lib' );

require 'libraryA';
require 'libraryB';
require 'libraryC;

ruby/rubygems/server.1532064144.txt.gz · 最終更新: 2018/07/20 14:22 by taka