ติดตั้ง Docker Desktop บน Windows 10 Home x64

Komsan Pandora
2 min readFeb 15, 2019

--

แบบนี้เลย https://www.reddit.com/r/ProgrammerHumor/comments/7vstz9/i_tried_to_install_docker_on_windows_but_it_broke/

Docker Desktop เป็นโปรแกรมหนึ่งที่สามารถจัดการ container ให้เรา ติดตั้งได้ในหลาย Platform อาทิ Mac หรือ Windows แต่ประเด็นที่สำคัญสำหรับผู้ใช้ Windows อย่างผมที่ตอนซื้อ Laptop ใหม่ลืมดูก็คือ เราซื้อ Windows 10 Home มา T-T เรามาดู Requirements คร่าวๆ ของเจ้า Docker Desktop for windows กันนะครับ

System Requirements:

  • Windows 10 64bit: Pro, Enterprise or Education (1607 Anniversary Update, Build 14393 or later).
  • Virtualization is enabled in BIOS.
  • CPU SLAT-capable feature.
  • At least 4GB of RAM.

https://docs.docker.com/docker-for-windows/install/

จะเห็นได้ว่า Window 10 Home นั้นไม่รองรับ ในความเป็นจริง Docker ก็ยังมี Docker Toolbox ให้ใช้ สำหรับผู้ใช้ที่ไม่สามารถใช้ Docker Desktop ได้ แต่ทว่าก็ต้องติดตั้ง VirtualBox ด้วย เพื่อให้สามารถใช้การได้

ดังนั้น ด้วยความอยากของผู้เขียนบทความ อยากหาวิธีติดตั้ง Docker Desktop มากๆ จึงนำวิธีการติดตั้งที่ทำให้สามารถใช้การได้มาฝากครับผม

1. ติดตั้ง Hyper-V components และ Containers feature

Enable Hyper-V Feature สำหรับ Windows 10 Pro

ทว่าใน Window 10 Home ไม่มีให้ติ๊กเปิด Feature Hyper-V แต่เรายังสามารถติดตั้งผ่าน *.bat script ด่านล่างได้

Hyper-V

pushd “%~dp0” dir /b %SystemRoot%\servicing\Packages\*Hyper-V*.mum >hyper-v.txt for /f %%i in (‘findstr /i . hyper-v.txt 2^>nul’) do dism /online /norestart /add-package:”%SystemRoot%\servicing\Packages\%%i” del hyper-v.txt Dism /online /enable-feature /featurename:Microsoft-Hyper-V -All /LimitAccess /ALL pause

Containers

pushd “%~dp0” dir /b %SystemRoot%\servicing\Packages\*containers*.mum >containers.txt for /f %%i in (‘findstr /i . containers.txt 2^>nul’) do dism /online /norestart /add-package:”%SystemRoot%\servicing\Packages\%%i” del containers.txt Dism /online /enable-feature /featurename:Containers -All /LimitAccess /ALL pause

คัดลองไปใส่ใน Notepad แล้วตั้งชื่ออะไรก็ได้ จากนั่น Run as administrator เลยครับ ใช้เวลาซักพักในการติดตั้ง อย่าลืม Restart เครื่องนะครับ

ตัวอย่างการตั้งชื่อไฟล์

2. แก้ไข Registry

แก้ไข registry เพื่อหลอกตัวติดตั้งของ Docker Desktop ชั่วคราว (หลังจากติดตั้งเสร็จสามารถแก้ไขกลับได้) ดังนี้

กดปุ่ม Windows + R พิมพ์ว่า “regedit” กด Enter

จากนั้นเข้าไปที่

\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion

ด้านขวามือ แก้ไขค่าต่างๆ โดยการดับเบิ้ลคลิก ดังนี้

EditionID: Core → Professional
ProductName: Windows 10 Home → Windows 10 Pro

ตัวอย่างการแก้ไขใน Registry Editor

3. ติดตั้ง Docker Desktop

สามารถติดตั้ง Docker Desktop ได้ตามปกติ โดยสามารถโหลดได้จาก ที่นี่

4. ลบ EnvironmentVariable ที่ขึ้นต้นด้วย DOCKER_*

Docker Desktop ทำงานได้ตามปกติแล้ว แต่ยังมีปัญหาสำหรับบางท่านคือ ไม่สามารถใช้คำสั่ง Docker Pull ได้

ดังนั้นเพื่อให้สามารถใช้การได้ปกติ จึงต้องลบตัวแปรบางตัวออก สามารถลบได้เลย แต่สำหรับผู้ที่ลบไม่เป็น สามารถนำ script ด้านล่างไปรันใน Power Shell ได้เลย

[Environment]::SetEnvironmentVariable(“DOCKER_CERT_PATH”, $null, “User”)
[Environment]::SetEnvironmentVariable(“DOCKER_HOST”, $null, “User”)
[Environment]::SetEnvironmentVariable(“DOCKER_MACHINE_NAME”, $null, “User”)
[Environment]::SetEnvironmentVariable(“DOCKER_TLS_VERIFY”, $null, “User”)
[Environment]::SetEnvironmentVariable(“DOCKER_TOOLBOX_INSTALL_PATH”, $null, “User”)

หลังจากขั้นตอนนี้ก็ขอให้ทุกคนมีความสุขกับ Docker Desktop ได้เลย เย้

นี่คือบทความแรกของผมนะครับ สำหรับทุกคำแนะนำขอบคุณมากครับ

--

--