programing

Windows용 Docker 오류: "BIOS에서 하드웨어 지원 가상화 및 데이터 실행 보호를 사용하도록 설정해야 합니다."

showcode 2023. 5. 5. 10:02
반응형

Windows용 Docker 오류: "BIOS에서 하드웨어 지원 가상화 및 데이터 실행 보호를 사용하도록 설정해야 합니다."

도커를 설치했는데 GUI를 실행할 때 다음 오류가 발생합니다.

하드웨어 지원 가상화 및 데이터 실행 보호를 BIOS에서 사용하도록 설정해야 함

도커가 커맨드 라인의 매력처럼 일을 하니까 버그 같은데, 왜 이런 일이 일어나는지 단서를 가진 사람이 있는지 궁금합니다.

확인하기 전에 BIOS에서 가상화를 사용하도록 설정했으며 Intel 프로세서 식별 유틸리티에서 가상화가 활성화되었음을 확인합니다.Docker, Docker-Machine 및 Docker-Compose 명령행, Virtualbox 작업, Debian 또는 Ubuntu VM 작업에서 Docker 실행.

GUI에 대한 이상한 문제가 있습니다.

내 사양:

  • Windows 10 Prox64 기념판
  • 인텔 코어 i5-6300HQ @ 2.30GHz

설명된 기능을 사용하도록 설정한 경우 문제는 사용하지 않도록 설정된 Hyper-V 또는 Hypervisor 에이전트가 실행되고 있지 않은 것입니다.

솔루션 A(Hyper-V를 완전히 사용하지 않도록 설정하거나 설치하지 않은 경우)

  1. 관리자 권한으로 PowerShell을 엽니다.

  2. 에서 Hyper-V 사용

    dism.exe /Online /Enable-Feature:Microsoft-Hyper-V /All

솔루션 B(Hyper-V 기능이 이미 활성화되었지만 작동하지 않는 경우)

다음을 통해 하이퍼바이저

bcdedit /set hypervisorlaunchtype auto

이제 시스템을 다시 시작하고 다시 시도합니다.

솔루션 C

문제가 지속되면 시스템의 Hyper-V가 손상되었을 수 있습니다.

  1. 들어가세요Control Panel -> [Programs] -> [Windows Features]모든 Hyper-V 관련 구성 요소의 선택을 완전히 취소합니다.시스템을 다시 시작합니다.

  2. Hyper-V를 다시 사용하도록 설정합니다.다시 시작.

참고 1:

Hyper-V에는 하드웨어 가상화가 전제 조건으로 필요합니다.PC에서 이 기능을 지원하는지 확인합니다. 그렇다고 해도 작동하지 않으면 BIOS가 올바르게 구성되어 있지 않고 이 기능이 비활성화되어 있을 수 있습니다.이 경우 확인하고 활성화한 후 다시 시도하십시오.가상화 기능은 사용되는 플랫폼에 따라 다른 이름으로 보고될 수 있습니다(예: 가상화 레이블을 명시적으로 사용하는 옵션이 없는 경우 AMD에서는 SVM 기능 상태, Intel에서는 VT-x 기능 상태를 확인해야 함).

참고 2:

Hyper-V는 다음과 같은 일부 버전에서만 설치할 수 있습니다.

Windows 10 Enterprise, Windows 10 Professional, Windows 10 교육.

Hyper-V는 저렴한 Windows 버전이나 모바일 Windows 버전에는 설치할 수 없습니다. 예:

Windows 10 Home, Windows 10 Mobile, Windows 10 Mobile Enterprise.

아래는 저를 위한 작업 솔루션입니다. 다음 단계를 따르십시오.

  1. PowerShell을 관리자로 열거나 CMD 프롬프트를 관리자로 엽니다.

  2. -> 이 명령을 실행합니다.bcdedit /set hypervisorlaunchtype auto

  3. 이제 시스템을 다시 시작하고 다시 시도합니다.

건배.

이 경우 BIOS 설정에서 가상화를 사용하도록 설정해야 했습니다.

  1. PC 다시 시작
  2. '다시 시작' 화면에서 다음 키 중 하나를 누르고 창에 BIOS 설정을 입력합니다. esc, f1, f2, f3, f4, f8 또는 delete
  3. Intel 기반 시스템의 경우:
    • f7을 누릅니다(고급 모드).
    • 상급이 되다, 상급자가 되다
    • cpa 구성
    • 가상화 사용

그리고 위의 모든 단계를 거쳐 마침내 작동합니다 :-)

참고: Windows 버전이 Hyper-V를 지원하는 경우 설치 중 Hyper-V 사용을 선택하여 도커를 직접 설치할 수 있습니다.그러나 Windows(윈도우)에서 이를 지원하지 않는 경우 아래 솔루션을 따르십시오.


저도 비슷한 문제가 있었습니다.사하도록설을 사용하도록 했습니다.Intel Virtual TechnologyBIOS 설정에서.

여기에 이미지 설명 입력

그리고 여기서 리눅스 커널을 업데이트했습니다. 그리고 작동했습니다.

내 사양:

  • Microsoft Windows 10 홈 x64 단일 언어
  • Intel(R) Core(TM) i5-7300 @ 2.50GHz

Intel HAXM 및 VirtualBox를 제거했습니다. 이제 Docker가 실행됩니다.

VMware를 제거하기 위해 필요한 모든 작업을 수행했습니다.

도커가 지금 실행 중입니다.

다음 단계를 수행합니다.

  1. powershell에서 이 합니다.
    bcdedit /set hypervisorlaunchtype
    auto
    
  2. PC 다시 시작
  3. 이제 시도해 보세요.docker --version 단위

다음 단계를 따릅니다.

  1. Windows 설정 = > Update & Security = > Recovery = > Advanced Startup(고급 시작)으로 이동하고 Restart Now(지금 다시 시작)를 클릭합니다.
  2. 문제 해결 = > 고급 옵션 = > UEFI 펌웨어 = > 재시작.
  3. BIOS = > 구성 = > 가상화 기술 = > 활성화로 이동합니다.
  4. 변화를 저장하면 작동합니다.

한 걸음

2단계

설정을 통해 Hyper-V 역할을 활성화합니다. Windows 버튼/아이콘을 마우스 오른쪽 버튼으로 클릭하고 '앱 기능'을 선택합니다.

1 - 오른쪽 관련 설정에서 프로그램 및 기능을 선택합니다.

2 - Windows 기능 켜기 또는 끄기를 선택합니다.

2- Hyper-V선택하고 확인을 클릭합니다.

여기에 이미지 설명 입력

도움이 되었습니다.

  • Linux용 가상 시스템 플랫폼 및 윈도우즈 하위 시스템 구성 요소 사용 안 함
  • 다시 시작
  • 구성 요소 사용
  • 다시 시작

제 문제는 WSL2 베타 버전과 관련이 있었던 것 같습니다.안드로이드 서브시스템을 설치하려고 했습니다.하지만 저는 얼마 전에 그것을 삭제했습니다.그래서 베타 WSL2만 남았습니다.

저의 경우 hyper-v를 제거하고 pc를 재시작한 후 도커를 다시 실행해야 했습니다.

PowerShell에서 사용해 보십시오(관리자 사용).

Enable-WindowsOptionalFeature –Online -FeatureName Microsoft-Hyper-V –All -NoRestart

이렇게 하면 관리 도구 없이 HyperVisor를 설치하고 이후에 Docker를 실행할 수 있습니다.

부랑자도 사용합니다.한 번에 한 가지만 사용할 수 있는 것 같습니다.부랑자/virtualBox를 제거하면 도커를 실행할 수 있고 그 반대도 가능합니다.

위에서 여러 가지 제안을 시도해 보았지만 도커는 하드웨어 지원 가상화 오류에 대해 계속 불평하고 있습니다.가상화는 BIOS에서 사용하도록 설정되어 있으며 Hyper-V도 설치 및 사용하도록 설정됩니다.몇 번의 시도 끝에 결국 coreinfo 툴을 다운로드했고 하이퍼바이저가 실제로 활성화되지 않았다는 것을 알게 되었습니다.ISE(64비트)를 위 솔루션 B의 관리 및 실행 명령으로 사용하고 하이퍼바이저를 성공적으로 활성화합니다(coreinfo -v를 통해 다시 확인).다시 시작하면 도커가 성공적으로 실행됩니다.

BIOS 옵션에 문제가 없으면 모든 HyperV 기능을 사용하지 않도록 설정하고 사용하도록 강제 설정하면 문제가 해결되었습니다. --cmd 사용 안 함 - Windows 옵션 기능 - 온라인 - 기능 이름 Microsoft - Hyper-V - all -- 다시 시작 Enable - Windows 옵션 기능 - Online - FeatureName Microsoft - Hyper-V – All

저의 경우 위에 언급된 솔루션을 모두 사용했지만 아무 것도 작동하지 않았습니다.그래서 도커를 제거하고 다시 설치하기로 했습니다.

이제 그 과정에서 제가 확인하지 않았다는 것을 알게 되었습니다.Use Windows containers instead of Linux containers (this can be changed after installation)이전 설치에서 위의 문제가 발생했지만 솔루션이 여전히 해결하지 못한 이유입니다.따라서 데스크톱 도커를 실행하거나 제거한 후 이 옵션을 선택하여 다시 설치하기 전에 확인하십시오.

도커 설치 프로세스

VMWare를 설치한 후에도 동일한 문제가 발생하여 제거했지만 문제가 해결되지 않았습니다.

나를 위한 해결책: "Windows 기능 켜기/끄기"에서 나는 다음을 해제했습니다.

  • 하이퍼-v의
  • 용기
  • 리눅스용 윈도우즈 하위 시스템

다시 시작합니다.

다시 시작한 후 도커로부터 다음 메시지를 받았습니다.

여기에 이미지 설명 입력

메시지에 나온 대로 명령 실행을 실행했습니다.

Enable-WindowsOptionalFeature -Online -FeatureName $("VirtualMachinePlatform", "Microsoft-Windows-Subsystem-Linux")

그런 다음 다시 시작하고 voila, Docker가 WSL2로 돌아왔습니다.

Cygwin을 제거했을 때 저의 문제가 해결되었습니다.

문제가 지속되면 시스템의 Hyper-V가 손상되었을 수 있습니다.

제어판 -> [프로그램] -> [Windows 기능]에서 Hyper-V 관련 구성 요소의 선택을 완전히 취소합니다.시스템을 다시 시작합니다.

Hyper-V를 다시 사용하도록 설정합니다.다시 시작.

AMD 시스템에서 변경해야 하는 BIOS 설정을 SVM 모드라고 할 수 있습니다.그것이 제 Gigabyte X570 보드의 경우였습니다.

설정은 BIOS에서 고급 모드 -> Twaker -> 고급 CPU 설정 -> SVM 모드(사용하도록 설정)에서 확인할 수 있습니다.

AMD-V는 SVM(Secure Virtual Machine Mode)의 상표 이름으로 변경되었습니다.

이 가 무엇인지도 , 어떻게작명모무하고엇령이을무도다니릅도모지인방무는하도엇이것해를또커는지지는인엇가르저동이바퍼하하이이모는도러지르고한▁i▁the▁do▁whatvisor▁commands▁don▁works▁and▁know다모니무릅▁and▁i▁or,▁this▁i도지t것방인'엇이는하해▁i▁know▁these를,도어커또▁what▁don떻,er는▁what▁itnx두 번째 명령에서 이 명령을 해제하는 것을 의미합니다.이러한 명령은 컴퓨터에 "VT-x 끄기"로 저장되어 있었습니다(또 다른 기능은 가상화 기술과 관련된 것으로, 가상화 기술이 무엇인지는 알 수 없습니다).하지만 이 두 가지를 모두 실행하는 것 외에는 아무 것도 효과가 없었습니다. (모든 솔루션을 테스트한) 승인된 답변과 다른 업데이트된 답변을 포함하여.이것들을 테스트하는 것은 전적으로 여러분에게 달려 있습니다. 저는 여러분에게 어떠한 수정도 보장하지 않지만, 저에게는 효과가 있었습니다. 저와 같은 다른 답도 그렇게 도움이 되지 않는 다른 사람에게 도움이 될 수 있다고 생각했기 때문에 여기에 넣었습니다.

bcdedit /set hypervisorlaunchtype auto

bcdedit /set nx AlwaysOff

shutdown /s

언급URL : https://stackoverflow.com/questions/39684974/docker-for-windows-error-hardware-assisted-virtualization-and-data-execution-p

반응형