ืื ืึทืจืืขื ืืื ืืขืืืขื ืคึผืฉืื, ืฉืืขืื ืืึธืงืงืขืจ ืืืืฃ ืืืื ืืจืืขืื Windows ืืึทืคึผืืึทืคึผ, ืืืึธืก ืืื ืฉืืื ืึท ืืึธืึธืืึธืืืฉืขืจ ืืึธืจืื. ืืื ืืื ืกืืึทืืืจื ืืึธืงืงืขืจ ืืขืกืงืืึธืคึผ ืืื ืืืฉืืคื ืงืึทื ืืืื ืขืจื, ืึทืืฅ ืืื ืืื, ืึธืืขืจ ืืื ืืขืฉืืืื ื ืืืกืงืึทืืืขืจื ืึทื VMWare ืืืขืจืงืกืืืืฉืึทื ืคืืจืฉืืืคื ืคืืืกื ืืืง ืืืืจืืืึทื ืืืฉืื ืขื ืืื ืึท ืืขืืช:
VMware Workstation and Device/Credential Guard are not compatible. VMware Workstation can be run after disabling Device/Credential Guard.
ืื ืึทืจืืขื ืืื ืคืืจืฉืืืคื, ืขืก ืืื ืืจืื ืืืขื ืฆื ืคืึทืจืจืืืื
ืืืจื ืืึธืืืื ื, ืขืก ืืื ืืขืคึฟืื ืขื ืืขืืืึธืจื ืึทื ืืขืจ ืืขืืช ืึทืงืขืจื ืจืขืื ืฆื ืืขืจ ืื ืงืึทืืคึผืึทืืึทืืืืึทืื ืคืื VMWare Workstation ืืื Hyper-V ืืืืฃ ืืขืจ ืืขืืืืงืขืจ ืืึทืฉืื. ืืขืจ ืคึผืจืึธืืืขื ืืื ืืึทืืืืกื ืืื ืขืก ืืื ืึทื ืืึทืึทืืืขืจ VMWare ืืืืืื ื ืืื ืืึธืก
mountvol X: /s
copy %WINDIR%System32SecConfig.efi X:EFIMicrosoftBootSecConfig.efi /Y
bcdedit /create {0cb3b571-2f2e-4343-a879-d86a476d7215} /d "DebugTool" /application osloader
bcdedit /set {0cb3b571-2f2e-4343-a879-d86a476d7215} path "EFIMicrosoftBootSecConfig.efi"
bcdedit /set {bootmgr} bootsequence {0cb3b571-2f2e-4343-a879-d86a476d7215}
bcdedit /set {0cb3b571-2f2e-4343-a879-d86a476d7215} loadoptions DISABLE-LSA-ISO
bcdedit /set {0cb3b571-2f2e-4343-a879-d86a476d7215} device partition=X:
mountvol X: /d
ื ืึธื ืจืืกืืึทืจืืื ื, Windows ืืืขื ืคืจืขืื ืืืื ืืืจ ืืึทืงืข ืืืืื ืฆื ืืืกืืืืึทื Defender Credential Guard. ืืึธ! ืืื ืืขื ืืืขื, VMWare Workstation ืืืขื ืฆืืจืืงืงืืืขื ืฆื ื ืึธืจืืึทื ืึธืคึผืขืจืึทืฆืืข, ืืื ืืืจ ืืืขืื ืืขืคึฟืื ืขื ืืื ืืื ืื ืืขืืืข ืคึผืืึทืฅ ืืื ืืืืืขืจ ืื ืกืืึธืืื ื ืืึธืงืงืขืจ.
ืืื ืืื ื ืืฉื ืืขืคึฟืื ืขื ืึท ืืืืืื ื ืืื ืฆื ืฉืึธืืขื ืืึทืื Hyper-V ืืื VMWare Workstation, ืืื ืืึธืคึฟื ืืื ืืืขืื ืืืขืจื ืคืจืขื ืื ืืื ื ืืึทืข ืืืขืจืกืืขืก.
ืื ืื ืืขืจ ืืืขื
ืืื ืืื ืืึทื ื ืึทืืืงืืื ืฆื VMWare ืืืึธืจืงืกืืืืฉืึทื ืคึฟืึทืจ ืคืึทืจืฉืืื ืฆืืืขืงื, ืืื ืืขืคืจืืืื ืฆื ืืึทืงืืืขื ืึทืืืขืง ืืืืฃ Hyper-V ืืื VirtualBox, ืึธืืขืจ ืื ืคืึทื ืืงืฉืึทื ืึทืืืื ืืื ื ืืฉื ืืึทืคืจืืืืงื ืืืื ืืึทืกืงืก, ืืื ืึทืืื ืืื ืืืฆื ืืื ืืขื ืืึธื. ืขืก ืืื ืืขืืืขื ืึท ืืืืืื ื ืืื ืฆื ืืึทืื ืคืจืขื ืื VMWare, Docker ืืื VSCode ืืื ืืืื ืึทืจืืขื ืกืืืืืืข.
ืืื ืืืขื ื ืืฉื ืืขืจืฆืืืื ืื ืืึทื ืืึธื ืืืจืื ื ืื ืกืืจืึทืงืฉืึทื ื ืกืคึผืขืฆืืขื, ื ืึธืจ ืื ืจืฉืืื ืคืื ืื ืืจืืืืึทื ืฅ:
ืืึธืงืงืขืจ ืืืฉืืจืื (ืืึธืงืขืจ ืืึทืฉืื ืึทืจืืึทื ืืขืจืขืื ื)Docker Machine VMware Workstation Driver - ืืึธืงืงืขืจ ืืขืกืงืืึธืคึผ
ืืึธ, Docker Desktop, ืืืืืขืจ, ืืืขื ืืืื ืืืื ืืืจืฃ. ืืืื ืืืจ ืืืืึทืืืฉื ืขืก, ืืขืืึธืื ืื ืกืืึทืืืจื ืขืก ืืืืืขืจ, ืึธืืขืจ ืืึธืก ืืึธื ืจืืืืืืื ื ืื ืืฉืขืงืงืืึธืงืก ืฆื ืืึทืื ืขื ืืขืจืื ืืขื ืฆื ืื ืึทืก, ืึทืืื ื ืืฉื ืฆื ืืจืขืื VMWare ืืืขืจืงืกืืืืฉืึทื ืืืืืขืจ.
ืืื ืืืืื ืฆื ืืึธื ืืืืื ืึทื ืึทืืฅ ืึทืจืืขื ืคืืึทื ืคืื ืึท ืคึผืฉืื ืืึทื ืืฆืขืจ, ืื ืืึทื ืืึธื ืืืจืื ื ืืืืื ืืืขืื ืคืจืขืื ืคึฟืึทืจ ืขืกืงืึทืืืจืื ื ืคืื ืจืขืื ืืืขื ืืื ืืึทืจืคึฟื ืขืก, ืึธืืขืจ ืึทืืข ืงืึทืืึทื ืื ืืืืฃ ืื ืืึทืคึฟืขืื ืฉืืจื ืืื ืกืงืจืืคึผืก ืืขื ืขื ืขืงืกืึทืงืืืืึทื ืคืื ืืขื ืงืจืึทื ื ืืึทื ืืฆืขืจ.
ืืื ืึท ืจืขืืืืืึทื, ืื ืืึทื ืฉืึทืคึฟื:
$ docker-machine create --driver=vmwareworkstation dev
ืคึฟืื Boot2Docker, ืึท ืืขืื ืืืืจืืืึทืืงืึท ืืืขื ืืืื ืืืฉืืคื ืื ืืืึธืก ืืืขื ืืืื Docker.
ืื ืืืืจืืืึทื ืืึทืฉืื ืงืขื ืขื ืืืื ืึทืืึทืืฉื ืฆื ืื VMWare Workstation GUI ืืืจื ืขืคื ืื ืงืึธืจืึทืกืคึผืึทื ืืื ื ืืืืงืก ืืขืงืข. ืึธืืขืจ ืืึธืก ืืื ื ืื ื ืืืืืง, ืืืืึทื VSCode ืืืขื ืืืฆื ืืึทืจืคึฟื ืฆื ืืืืคื ืึท PowerShell ืฉืจืืคื (ืคึฟืึทืจ ืขืืืขืืข ืกืืื, ืืืื ืืึธืงืงืขืจ-ืืึทืฉืื ืืื ืืึธืงืงืขืจ-ืืึทืฉืื-ืืจืืืืืขืจ-ืืืืืืึทืจืขืืืึธืจืงืกืืืืฉืึทื ืขื ืืืงื ืืื ืืื ืื ืืื ืืขืงืข):
cd ~/bin
./docker-machine env dev | Invoke-Expression
code
VSCode ืืืขื ืขืคืขื ืขื ืฆื ืึทืจืืขืื ืืื ืงืึธื ืืืืฃ ืื ืืืืข ืืึทืฉืื ืืื ืืึธืงืงืขืจ ืืื ืื ืืืืจืืืึทื ืืึทืฉืื. ืฉืืขืง ืืจืืื
ืฉืืืขืจืืงืืืื:
ืืื ืืขื ืคึผืจืึธืฆืขืก ืคืื ืงืจืืืืืื ื ืืึธืงืงืขืจ-ืืึทืฉืื, ืืขืจ ืคึผืจืึธืฆืขืก ืืขืืื ืืขื ืคึฟืึทืจ ืืืจ:
Waiting for SSH to be available...
ืืื ื ืึธื ืึท ืืฉืขืช ืขืก ืืขืขื ืืืงื ืืื ืึท ืืืืขืคืืืง ืคืื ืคืจืืืื ืฆื ืคืึทืจืืืืื ืึท ืงืฉืจ ืืื ืื ืืืืจืืืึทื ืืึทืฉืื.
ืขืก ืก ืึทืืข ืืืขืื ืืึทืืืืึทืื ืคึผืึธืืืืืง. ืืืขื ืืืจ ืฉืึทืคึฟื ืึท ืืืืจืืืึทื ืืึทืฉืื, ืืืจ ืืืขื ืืึธืื ืึท ~.dockermachinemachinesdev ืืืขืืืืืึทืืขืจ ืืื ืืขื ืืืขืืืืืึทืืขืจ, ืขืก ืืืขื ืืืื ืืึทืืืืึทืื ืืขืงืขืก ืคึฟืึทืจ ืงืึทื ืขืงืืื ื ืืืจื SSH: id_rsa, id_rsa.pub. OpenSSH ืงืขื ืึธืคึผืืึธืื ืฆื ื ืืฆื ืืื ืืืืึทื ืขืก ืืืื ื ืึทื ืืื ืืึธืื ืืขืจืืืืืขื ืืฉ ืืฉืื. ืืืืื ืืึธืงืขืจ-ืืึทืฉืื ืืืขื ื ืืฉื ืืึธืื ืืืจ ืขืคึผืขืก ืืืขืื ืืขื, ืึธืืขืจ ืืืขื ืคืฉืื ืจืืงืึทื ืขืงื ืืื ืขืก ืืืขืจื ืืึธืจื.
ืืืืืื ื: ืืื ืืึทืื ืืื ืื ืฉืึทืคืื ื ืคืื ืึท ื ืืึท ืืืืจืืืึทื ืืึทืฉืื ืืืืื, ืืืจ ืืืื ืฆื ืื ~ .dockermachinemachinesdev ืืืขืืืืืึทืืขืจ ืืื ืืืืฉื ืื ืจืขืื ืฆื ืื ืกืคึผืขืกืึทืคืืื ืืขืงืขืก, ืืืื ืขืจ ืืื ืึท ืฆืืึทื.
ืื ืืขืงืข ืืืื ืืืื ืึธืื ื ืืืจื ืื ืงืจืึทื ื ืืึทื ืืฆืขืจ, ืืืืื ืืขืจ ืืืฆืืืงืขืจ ืืึทื ืืฆืขืจ ืืื SYSTEM ืืึธืื ืคืื ืึทืงืกืขืก, ืึทืืข ืื ืืขืจืข ื ืืฆืขืจืก, ืึทืจืืึทื ืืขืจืขืื ื ืื ืึทืืืื ืืกืืจืึทืืึธืจืก ืืจืืคึผืข ืืื ืื ืึทืืืื ืืกืืจืึทืืึธืจืก ืืื, ืืืื ืืืขืจื ืืืืกืืขืืขืงื.
ืขืก ืงืขื ืืืื ืืืื ืคึผืจืึธืืืขืืก ืืื ืงืึทื ืืืขืจืืื ื ืึทืืกืึธืืื ืคึผืึทืืก ืคึฟืื Windows ืฆื Posix ืคึฟืึธืจืืึทื, ืืื ืืื ืืืื ืืื ื ืืืึทืืืืื ืืื ืึท ืกืืืืึธืืืฉ ืืื ืง. ืืืขืจ ืืึธืก ืืื ืื ืื ืืขืจ ืืขืฉืืืืข.
ืืงืืจ: www.habr.com