2016-07-07 7 views
1

Я пытаюсь установить шоколад, используя packer.io и скрипт powershell.Packer.io - установка шоколадного за прокси

У меня есть два сценария: один для конфигурации прокси и один для шоколадной установки. первого сценарий для прокси-сервера:

$ErrorActionPreference = "Stop" 
# set global proxy 
$reg = "HKCU:\Software\Microsoft\Windows\CurrentVersion\Internet Settings" 
Set-ItemProperty -Path $reg -Name ProxyServer -Value "http://mycompoany.proxy:1234" 
Set-ItemProperty -Path $reg -Name ProxyEnable -Value 1 

второго скрипта для установки шоколадного:

$ErrorActionPreference = "Stop" 
$reg = "HKCU:\Software\Microsoft\Windows\CurrentVersion\Internet Settings" 

$settings = Get-ItemProperty -Path $reg 
$settings.ProxyServer 
$settings.ProxyEnable 

iex ((new-object net.webclient).DownloadString('http://chocolatey.org/install.ps1')) 

Я бег этого сценария с помощью PowerShell в упаковщик и первом проходе сценария, второй сценарий не делает. Я получаю сообщение об ошибке:

^[[0;32m windows-2012-R2-standard: Exception calling "DownloadString" with "1" argument(s): "Unable to connect to^[[0m 
^[[0;32m windows-2012-R2-standard: the remote server"^[[0m 
^[[0;32m windows-2012-R2-standard: At C:\Windows\Temp\script.ps1:19 char:1^[[0m 
^[[0;32m windows-2012-R2-standard: + iex ($wc.DownloadString('https://chocolatey.org/install.ps1'))^[[0m 
^[[0;32m windows-2012-R2-standard: + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^[[0m 
^[[0;32m windows-2012-R2-standard: + CategoryInfo   : NotSpecified: (:) [], ParentContainsErrorRecordE^[[0m 
^[[0;32m windows-2012-R2-standard: xception^[[0m 
^[[0;32m windows-2012-R2-standard: + FullyQualifiedErrorId : WebException^[[0m 
^[[0;32m windows-2012-R2-standard:^[[0m 
^[[1;32m==> windows-2012-R2-standard: Deleting output directory...^[[0m 

Конечно $ settings.ProxyServer возвращает правильный адрес прокси-сервера и прокси включен. Когда я запускаю только первый скрипт и загрузочный компьютер, созданный упаковщиком, я могу вручную установить шоколад без каких-либо изменений и просматривать интернет с помощью IE. Если я не запускаю первый скрипт (для установки procxy), я ничего не установлю из-за прокси-сервера. Также я не могу открыть какую-либо интернет-страницу. В результате я предполагаю, что работает мой скрипт для прокси.

Я не использую пользователя и не передаю свой прокси-сервер.

Система Windows - это сервер Windows R2 R2. Packer version 0.10.1

Я пробовал установить прокси непосредственно в объекте powershell webclient, но это тоже не работает.

Любые идеи?

+0

Вы пробовали '-ExecutionPolicy неограниченный'? например например: '@powershell -NoProfile -ExecutionPolicy unrestricted -Command" iex ((new-object net.webclient) .DownloadString ('https://chocolatey.org/install.ps1')) "' –

ответ

0

Вы можете использовать это. Работал для меня. https://github.com/chocolatey/choco/wiki/Proxy-Settings-for-Chocolatey

Явная Настройки прокси-сервера

шоколадным имеет явную поддержку прокси, начиная с 0.9.9.9.

Вы можете просто настроить 1 или 3 настройки, а Chocolatey будет использовать прокси-сервер. требуется прокси-сервер, а также местоположение и порт прокси-сервера. proxyUser и proxyPassword являются необязательными. Значения для пользователя/пароля используются только для учетных данных, когда они присутствуют.

choco config set proxy <locationandport> 
choco config set proxyUser <username> 
choco config set proxyPassword <passwordThatGetsEncryptedInFile> 

Пример

Идущие следующие команды в 0.9.9.9:

choco config set proxy http://localhost:8888 
choco config set proxyUser bob 
choco config set proxyPassword 123Sup#rSecur3 
0

Unfortunatelly Я не могу установить прокси в Power Shell. Это не работает без перезапуска и запускает IE за один раз [sic!].

Я установил прокси-сервер в файл Autounattend.xml, и это решение работает.