Windows 컨테이너 내에서 스크립트를 관리자로 실행하는 방법 이제 환경 변수를 설정하는 스크립트를 실행해야합니다.

windowsservercore 기반 Docker 이미지 에 Windows Enterprise WDK 를 설치하려고합니다 . 압축을 풀면 응용 프로그램이 설치되며 이미 완료했으며 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

그리고 스크립트를 실행하면 스크립트에 지정된 환경 값을 설정하지 못했습니다.

제안?



답변

귀하의 문제는 전혀 권리가 충분하지 않습니다. 이 기사를 참조 하십시오 .

UAC는 명령 줄 전용 인터페이스 이므로 IE가 없거나 사용자 응용 프로그램을 지원하기 때문에 Server Core에서 사용할 수 없습니다. 또한 명령 프롬프트와 함께 UAC를 사용하려면 시작을 클릭하고 명령 프롬프트를 마우스 오른쪽 단추로 클릭 한 다음 관리자 권한으로 실행을 선택할 수 있도록 Explorer Shell이 ​​있어야합니다. Server Core에서는 불가능합니다.

이미 관리자 권한으로 명령을 실행하고 있습니다.

net user administrator Pa$$w0rd

필연적으로 실패합니다.

당신의 문제는 다른 것입니다.

여기를 참조 하십시오 . WDK 설치에는 Windows Server Core가 지원되지 않습니다. Server Core에서 환경 변수를 설정하는 방법에 대해서는 이 답변을 참조하십시오 .

SET 또는 SETX 명령 또는 다른 것을 사용하는 경우 해당 스크립트와 실제로 수행하는 작업을 살펴보고 변수가 올바르게 설정되지 않은 이유를 찾을 수 있습니다. 그것들은 영구적으로 설정되었지만 현재 창에는 설정되어 있지 않을 수 있습니다.