3

У меня есть следующие настройки:

  • Компьютер под управлением Windows 7
  • Установка Ruby, Vagrant, VirtualBox
  • VBox изображение Ubuntu 14.x
  • Работа во внутренней сети моей компании, которой нужен прокси для доступа в интернет.

Я могу настроить образ VBox для пользователя vagrant для доступа в Интернет, установив переменную окружения http_proxy для нашего прокси. Однако, когда я пытаюсь установить прокси в провайдере оболочки, у меня возникают проблемы. Вот части скрипта, которые определяют прокси, и части, которые делают первый доступ к Интернету:

# Base setup proxy and DISPLAY
set HTTP_PROXY=http://proxy.name.com:8080
echo "Add proxy to necessary parts"
echo 'export http_proxy=http://proxy.name.com:8080' >> ~vagrant/.bash_profile
echo 'export DISPLAY=192.168.137.1:0.0' >> ~vagrant/.bash_profile
echo 'export http_proxy=http://proxy.name.com:8080' >> /root/.bash_profile
export http_proxy=$HTTP_PROXY

# Install Git
echo "Install Git"
apt-get update
apt-get install -y git
...

Тем не менее, я получаю следующий вывод:

Add proxy to necessary parts
Install Git
Err http://security.ubuntu.com trusty-security InRelease

Err http://archive.ubuntu.com trusty InRelease

Err http://archive.ubuntu.com trusty-updates InRelease

Err http://security.ubuntu.com trusty-security Release.gpg
  Could not resolve 'security.ubuntu.com'
Err http://archive.ubuntu.com trusty Release.gpg
  Could not resolve 'archive.ubuntu.com'
Err http://archive.ubuntu.com trusty-updates Release.gpg
  Could not resolve 'archive.ubuntu.com'
Reading package lists...
W: Failed to fetch http://archive.ubuntu.com/ubuntu/dists/trusty/InRelease
...

Как я могу установить в скрипте Unix прокси и использовать его немедленно, чтобы можно было использовать apt-get , git clone , ...?

2 ответа2

6

Есть плагин для этого!

Установите vagrant-proxyconf:

vagrant plugin install vagrant-proxyconf

Настройте его (в $ HOME/.vagrant.d/Vagrantfile для всех виртуальных машин Vagrant):

Vagrant.configure("2") do |config|
  if Vagrant.has_plugin?("vagrant-proxyconf")
    config.proxy.http     = "http://10.206.246.20:8080"
    config.proxy.https    = "http://10.206.246.20:8080"
    config.proxy.no_proxy = "localhost,127.0.0.1"
  end
end
2

Я попробовал это, и это работает, удалил set:

HTTP_PROXY=http://10.206.246.20:8080
export http_proxy=$HTTP_PROXY

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .