Как использовать прокси-сервер за прокси-сервером?
Я получаю следующий вывод из команды установки пакета sudo:
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 установлен правильно, и я добавил gem: -http-proxy = мой прокси для ~/.gemrc. Эти настройки - это то, что позволяет командам моего драгоценного камня работать, и я надеялся, что они переведут на связки, но не удастся.
Мышление sudo может не наследовать мою всю мою среду, я также добавил эти настройки к своему пользователю root, но nada.
В этот момент связующее препятствует мне развертывать мое приложение, и я могу найти очень мало других, работающих в этом. Если у меня нет ответа, я буду вынужден разорвать связку из моего приложения Rails (что я бы не прочь сделать...)
Ответы
Ответ 1
Я использую Mac OS и просто устанавливаю http_proxy в bash
export http_proxy=http://user:[email protected]:port
и он отлично работает. Вы использовали sudo
? Если вы это сделаете, по умолчанию sudo
не сохраняет http proxy.
см. здесь, чтобы исправить:
https://memset.wordpress.com/2010/10/14/bash-http_proxy-from-a-user-environment-to-sudo-one/
Ответ 2
Я понял, что настройка HTTP_PROXY (в дополнение к http_proxy) сделала положительную разницу, т.е. работала для меня. Предположим, что вы правильно настроили переменную среды http_proxy
, попробуйте (если вы используете bash)
export HTTP_PROXY=$http_proxy
а затем также используйте параметр -E
для sudo (для сохранения переменных среды), поэтому
sudo -E bundle install
Ярл
Ответ 3
чтобы получить связку за прокси на win XP/7 Мне нужно было сделать следующее:
Я добавил http_proxy в переменные среды
- Мой компьютер
- Расширенные настройки системы
- Расширенная вкладка
- Переменные
- Новый
- Имя переменной = http_proxy
- Значение переменной = MY_PROXY
- Нажмите Ok
Измените MY_PROXY на то, что у вас есть.
это работало для bundler. Настройка прокси-сервера .gemrc работала только для драгоценных камней.
спасибо
Джейми
Ответ 4
Вы можете загрузить необходимые камни локально с установкой gem и затем установить пакет. Я не знаю точно, но это работает.
Ответ 5
Если вы не хотите устанавливать глобальную переменную в системе, вы можете редактировать ~/.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:[email protected]:PORT
Ответ 6
возможно более гибкий и безопасный пакетный файл:
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
Ответ 7
ОС Windows запустите следующую команду перед выполнением bundle install
SET http_proxy=http://user:[email protected]:port
Ответ 8
Удостоверьтесь, что ваш HTTP-адрес по умолчанию для ОС уже настроен. Если вы используете Linux, попробуйте следующую команду, чтобы узнать, к какому прокси-серверу он указывает.
echo $http_proxy
В моей операционной системе Ubuntu я установил свою переменную среды http_proxy на свой прокси-сервер в ~/.bashrc
Ответ 9
$ export http_proxy="http://username:[email protected]:port"
$ export ftp_proxy="http://username:[email protected]: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/
Ответ 10
Я запускаю Ubuntu. Переменная $http_proxy установлена, но она не работает с несколькими элементами. Один из этих предметов - драгоценный камень.
Если вы поместите следующее в свой файл ~/.gemrc, он будет работать.
http_proxy: proxy-url: порт
Замените порт proxy-url: на ваш прокси-адрес и порт. После того, как я добавил это, я запустил "bundle install", и все прошло как ожидалось.
Ответ 11
Чтобы команда bundle install
работала с прокси-сервером в окнах, выполните следующие действия:
- Редактировать файл
.gemrc
. Откройте командную строку Windows и введите: notepad %userprofile%\.gemrc
.
- Файл .gemrc открыт в блокноте. Введите новую строку
http_proxy:
http://username:[email protected]:proxyport
. Пароль должен быть закодирован с помощью urlencode.
- Закройте файл .gemrc, сохранив его.