プロキシが邪魔してRubyGemsでインストールできないとき
Rubyの標準パッケージマネージャ(?)であるRubyGemsでRubyパッケージをインストールする機会が増えてきた。Ruby on Railsが流行ってからは特に。
で、RubyGemsでインストールする際、ローカル環境に該当パッケージがない場合は、自動的にリモートインストールすると思うんだけど、このとき、プロキシ内にいると外部ネットワークにアクセスできず、
ERROR: While executing gem ... (SocketError)とかエラーが出てインストールできない。
getaddrinfo: no address associated with hostname.
こんなときは-pオプションでプロキシを設定してあげると、インストールできるようになる。
gem install パッケージ名 -r -p http://your.proxy.hostname:port_no注意すべき点は、
- http://...とHTTPを使用することを明示
- :8080のようにプロキシが使用しているポートを明示
-pオプションはRubyGemsのリモート系コマンドの共通オプションで、gem help installなどとするとusageが表示されるのでチェキ。
毎度プロキシを指定するのが面倒であれば、Windowsの場合(というか他のプラットフォームでRubyを使ったことがないだけです…)、http_proxyという環境変数に上記書式でプロキシを設定しておけば、指定しなくても済むようになる(けど、セキュリティ的にはたぶんよろしくない)。
[2007/05/22 追記]
RubyGemsのバージョンが0.8.10なら上記方法で問題なかったんだけど、0.9.2で試したところ
ERROR: While executing gem ... (NoMethodError)っていうエラーが出やがる。(上にも書いてあるけど)環境変数http_proxyにプロキシのアドレスを設定し、
gem install rails -rとすれば、とりあえずインストールできるので、RubyGemsのプロキシ越えがうまくいかなかった人は試して欲しい。
| 固定リンク
「Ruby」カテゴリの記事
- RSSクライアント(2007.06.15)
- 楽天WEB SERVICEをRubyから呼び出してみる(2007.06.01)
- プロキシが邪魔してRubyGemsでインストールできないとき(2007.04.13)
- RubyによるPDFファイルの生成方法 on Windows(2007.05.11)
トラックバック
この記事のトラックバックURL:
http://app.cocolog-nifty.com/t/trackback/14622190
この記事へのトラックバック一覧です: プロキシが邪魔してRubyGemsでインストールできないとき:
コメント