12

Я пытаюсь установить Windows Enterprise WDK на образ Docker на основе windowsservercore. Приложение устанавливается путем распаковки, и я уже сделал это и передал этот образ в Docker. Теперь мне нужно запустить скрипт, который устанавливает переменные среды. В соответствии с инструкциями по установке Enterprise WDK, я должен запустить этот скрипт от имени администратора. Я сделал это прямо на моем настольном компьютере, и он работает файл. В Docker-контейнере пользователь для входа по умолчанию

PS C:\> whoami
user manager\containeradministrator

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

PS C:\> net user administrator /active:yes
The command completed successfully.
PS C:\> net user administrator Pa$$w0rd
The command completed successfully.

Я пытаюсь запустить оболочку от имени администратора, но пользователь не меняется.

PS C:\> runas /user:administrator powershell
Enter the password for administrator:
Attempting to start powershell as user "C597C386289A\administrator" ...
PS C:\> whoami
user manager\containeradministrator

И если я запускаю свой сценарий, он не может установить ни одно из значений среды, указанных в сценарии.

Предложения?

1 ответ1

5

Ваша проблема не является недостаточными правами на всех. Смотрите эту статью.

UAC недоступен в Server Core, поскольку это интерфейс только для командной строки, не имеет IE или поддержки пользовательских приложений. Кроме того, чтобы использовать UAC с командной строкой, необходимо иметь оболочку обозревателя, чтобы вы могли нажать кнопку «Пуск», щелкнуть правой кнопкой мыши командную строку и выбрать запуск от имени администратора, что, очевидно, невозможно в Server Core.

Вы уже запускаете команды от имени администратора, в противном случае такие команды, как

net user administrator Pa$$w0rd

неизбежно потерпит неудачу.

Твоя проблема в другом.

Смотрите здесь. Windows Server Core не поддерживается для установки WDK. О настройке переменных среды на Server Core смотрите этот ответ.

Вы должны взглянуть на этот скрипт и на то, что он на самом деле делает, если он использует команды SET или SETX или что-то еще, и там вы можете найти подсказку, почему переменные не устанавливаются должным образом. Возможно, они установлены постоянно, но не в текущем окне.

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