Sudo bundle installコマンドから次の出力を取得します。
Fetching source index for `http://rubygems.org/`
Could not reach rubygems repository `http://rubygems.org/`
Could not find gem 'rspec-Rails (>= 2.0.0.beta.22, runtime)' in any of the gem sources.
$ http_proxyを正しく設定し、〜/ .gemrcにgem:--http-proxy = my proxyを追加しました。これらの設定は、gemコマンドを機能させるものであり、それらがbundlerに変換されることを望んでいましたが、そのような運はありません。
Sudoが私の環境のすべてを継承しないかもしれないと考えて、rootユーザーにそれらの設定を追加しましたが、nadaです。
この時点で、Bundlerによってアプリケーションのデプロイが妨げられているため、これを実行している他のユーザーはほとんどいません。誰にも答えがなければ、私はRailsアプリ(これをやっても構わない...)
OSX&Linux
export http_proxy=http://user:password@Host:port
export HTTP_PROXY=$http_proxy
HTTPSを使用している場合は、同様に設定します
export https_proxy=http://user:password@Host:port
export HTTPS_PROXY=$https_proxy
Sudo
を使用する場合、デフォルトでSudo
はhttpプロキシ変数を保持しません。つかいます -E
フラグを保持する
$ Sudo -E bundle install
Sudo
を作成するには、デフォルトで環境変数を保持します。
https://memset.wordpress.com/2010/10/14/bash-http_proxy-from-a-user-environment-to-Sudo-one/
Windows
以下の回答で指摘されているように、代わりにSET
を使用できます
SET HTTP_PROXY=http://user:password@Host:port
SET HTTPS_PROXY=%HTTP_PROXY%
HTTP_PROXYを(http_proxyに加えて)設定することもプラスの違いを生むことがわかりました。したがって、http_proxy
環境変数が正しい、試してください(bashを使用している場合)
export HTTP_PROXY=$http_proxy
そして、-E
オプションのSudo(環境変数を保持するため)
Sudo -E bundle install
ジャール
xP/7でWinのプロキシの後ろにバンドラーを取得するには、次のことを行う必要がありました。
環境変数にhttp_proxyを追加しました
MY_PROXYを自分のものに変更します。
これはバンドラーで機能しました。 .gemrcプロキシ設定は、gemでのみ機能しました。
ありがとうジェイミー
システムにグローバル変数を設定したくない場合は、〜/ .gemrcを編集して次のように記述できます。
---
:benchmark: false
:verbose: true
:sources:
- http://rubygems.org/
- http://gems.rubyforge.org
:backtrace: false
:bulk_threshold: 1000
:update_sources: true
gem: --http-proxy=http://USERNAME:PASSWORD@ADDRESS:PORT
Gem installで必要なgemをローカルにダウンロードしてから、バンドルインストールできます。正確ではありませんが、私は知っていますが、うまくいきます。
おそらく、より柔軟で安全なバッチファイルを使用します。
SET /P login="Enter proxy login: "
SET /P password="Enter proxy password: "
SET HTTP_PROXY=http://%login%:%password%@proxy.com:8080
SET HTTPS_PROXY=%HTTP_PROXY%
CLS
bundle install
Windows OS、実行する前に次のコマンドを実行しますbundle install
SET http_proxy=http://user:password@Host:port
OSのデフォルトのhttp_proxyが既に設定されていることを確認してください。 Linuxを使用している場合は、次のコマンドを試して、それが指しているプロキシを確認します。
echo $http_proxy
Ubuntu OSでは、http_proxy環境変数を〜/ .bashrcのプロキシサーバーに設定します
Ubuntuを実行しています。 $ http_proxy変数は設定されていますが、いくつかのアイテムでは機能しません。それらのアイテムの1つはgemです。
以下を〜/ .gemrcに入れると動作します。
http_proxy:proxy-url:port
Proxy-url:portをプロキシアドレスとポートに置き換えます。それを追加した後、「バンドルインストール」を実行し、すべてが期待どおりに実行されました。
$ export http_proxy="http://username:password@Host:port"
$ export ftp_proxy="http://username:password@Host:port"
$ Sudo visudo
ファイルに次の行を追加します。
Defaults env_keep = "http_proxy ftp_proxy"
この線の上:
Defaults env_reset
その後、コマンドをSudoとして実行すると動作します。
ref: https://memset.wordpress.com/2010/10/14/bash-http_proxy-from-a-user-environment-to-Sudo-one/
コマンドbundle install
をWindows上のプロキシで動作させるには、次の手順を実行します。
.gemrc
を編集します。 Windowsコマンドラインを開き、notepad %userprofile%\.gemrc
と入力します。http_proxy: http://username:passwordEncodedWithUrlencode@proxyaddress:proxyport
を入力します。パスワードはurlencodeでエンコードする必要があります。