gem、bundlerでproxyを使う方法

新しいPCでRubyの環境構築をしていたらこんなエラーが...

$ gem install pg
ERROR:  While executing gem ... (Gem::RemoteFetcher::FetchError)
    Errno::ECONNREFUSED: Connection refused - connect(2) (http://rubygems.org/gems/pg-0.14.1.gem)


どうやらhttp://rubygems.org/からhttp://tokyo-m.rubygems.org/に飛ばされるんだが、ここが死んでいるらしい。
Twitterで検索したら何人かが同じ状態らしいので、まず間違いないだろう。


で、サーバ側が復活するまで待とうかと思ったんだが、ふと例の事件を思い出してブラウザからTor経由にするとダウンロード出来る!
つまり、日本だけダメで海外だとOKっぽいので、Proxyを探してきて設定したら無事gemが使えたのでメモ。
Proxyなんか普段使わないしね。


bundleは環境変数、gemは"-p"オプションを使うようだ。統一感ないなぁ。

$ http_proxy=http://example.com:port bundle install
$ gem install gem_name -p http://example.com:port


ちなみに、Proxyはここから適当に探した。プロトコルは"HTTP"を選択すること。
http://www.freeproxylists.net/ja/


後から気づいたけど、TorなんかわざわざインストールしなくてもProxyを使うだけで良かった。
設定とかめんどくさいのに、無駄な労力を使ってしまった。
rubyの再インストールやバージョン変えてインストールとかしたけど、これも時間の無駄だった。
問題箇所もうちょい早く見つけれるようにしたいなぁ。