[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"article-docker-desktop-windows-install-flow-zh":3,"article-related-docker-desktop-windows-install-flow-zh":30,"series-tools-f28f3857-506d-4b14-9211-664c7d2f142a":73},{"id":4,"slug":5,"title":6,"content":7,"summary":8,"source":9,"source_url":10,"author":11,"image_url":12,"cover_image":12,"category":13,"language":14,"translated_content":11,"related_article_id":15,"keywords":16,"key_takeaways":22,"views":26,"created_at":27,"published_at":28,"topic_cluster_id":29},"f28f3857-506d-4b14-9211-664c7d2f142a","docker-desktop-windows-install-flow-zh","Windows 裝 Docker Desktop 先搞定 WSL","\u003Cp data-speakable=\"summary\">以前我以為裝 \u003Ca href=\"\u002Ftag\u002Fdocker\">Docker\u003C\u002Fa> Desktop 是點\u003Ca href=\"\u002Fnews\u002Fagent-skills-llm-agents-next-layer-zh\">下一\u003C\u002Fa>步，現在我只把它當成 WSL 先備妥、再安裝、重開機、最後驗證的流程。\u003C\u002Fp>\u003Cp>我在 Windows 上裝 Docker Desktop 已經踩過夠多次坑了。最煩的不是安裝檔本身，而是它看起來很單純，實際上卻把一堆前置條件藏在別的頁面裡：WSL、虛擬化、Windows 功能、還有那個你以為可以先跳過、結果後面一定回來討債的重開機。你一邊點安裝，一邊以為自己在做一件很小的事，結果半小時後開始懷疑是 Docker 壞了，或是 Windows 壞了，或是人生壞了。\u003C\u002Fp>\u003Cp>我後來是看了 \u003Ca href=\"https:\u002F\u002Fdocs.docker.com\u002Fdesktop\u002Fsetup\u002Finstall\u002Fwindows-install\u002F\">Docker Docs 的 Windows 安裝頁\u003C\u002Fa>，才把這件事拆清楚。它其實已經把方向講出來了，只是寫法還是很像產品文件：資訊都在，但順序不夠直白。我想要的不是一堆導覽和補充說明，我要的是一份照著做就能過的清單。\u003C\u002Fp>\u003Cp>所以這篇我直接把流程翻成實戰版。先把 WSL 弄好，再裝 Docker Desktop，該重開就重開，最後用真的容器去驗證。這樣做的好處很簡單：你不會把時間浪費在猜到底是 Docker、WSL，還是 Windows 自己在鬧脾氣。\u003C\u002Fp>\u003Ch2>Docker Desktop 只是表面，WSL 才是底層\u003C\u002Fh2>\u003Cblockquote>Run either the install or update command. You may be prompted to restart your machine. For more information, refer to Install WSL. Go to the official WSL GitHub Releases page.\u003C\u002Fblockquote>\u003Cp>這段話的意思很直接：Docker Desktop 在 Windows 上不是獨立世界，它是踩在 WSL 2 這條路上跑的。WSL 沒裝好、版本太舊、或是更新沒吃進去，Docker 看起來可能還能開，但之後跑容器就會開始卡。官方把你導去 \u003Ca href=\"https:\u002F\u002Flearn.microsoft.com\u002Fwindows\u002Fwsl\u002Finstall\">Microsoft 的 WSL 安裝頁\u003C\u002Fa>，還有 \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fmicrosoft\u002FWSL\u002Freleases\">WSL GitHub Releases\u003C\u002Fa>，就是在告訴你底層狀態比 UI 重要。\u003C\u002Fp>\n\u003Cfigure class=\"my-6\">\u003Cimg src=\"https:\u002F\u002Fxxdpdyhzhpamafnrdkyq.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Fcovers\u002Finline-1784656979438-lzmx.png\" alt=\"Windows 裝 Docker Desktop 先搞定 WSL\" class=\"rounded-xl w-full\" loading=\"lazy\" \u002F>\u003C\u002Ffigure>\n\u003Cp>我自己最常遇到的，就是新機器剛裝好 Docker Desktop，視窗能開、托盤圖示也正常，結果一跑容器就慢得像在等遠端主機回應。那種狀況最煩，因為它不會直接報一個很誇張的錯，它只會讓你一直懷疑是不是自己哪裡操作錯了。其實很多時候只是 WSL 還沒準備好。\u003C\u002Fp>\u003Cp>實操寫法很簡單：先確認 WSL 是否已安裝，而且是 WSL 2。你如果不確定，就先當成沒有。先裝或更新 WSL，再照 Windows 的提示重開機。團隊如果有標準開發機流程，這一步應該放在 Docker 之前，不要期待 Docker 安裝程式會順手幫你補齊整個系統狀態。\u003C\u002Fp>\u003Cul>\u003Cli>先檢查 WSL 是否存在，版本是不是 2。\u003C\u002Fli>\u003Cli>如果機器很久沒整理，先更新 WSL 再裝 Docker。\u003C\u002Fli>\u003Cli>任何 WSL 變更後都重開，不要賭運氣。\u003C\u002Fli>\u003C\u002Ful>\u003Ch2>安裝檔很簡單，主機狀態才是麻煩來源\u003C\u002Fh2>\u003Cp>Docker 的安裝頁看起來像一個很乾淨的下載按鈕，這種簡潔很容易騙人。真正的依賴其實在 Windows 主機狀態：虛擬化有沒有開、Windows 功能有沒有啟用、公司政策有沒有鎖住、BIOS 裡的設定有沒有過。這些東西不先處理，Docker Desktop 再乾淨也只是表面乾淨。\u003C\u002Fp>\u003Cp>我看過不少開發者把問題怪到 Docker 身上，結果最後發現是 Hyper-V 沒開、虛擬化沒開、或是 WSL kernel 太舊。這種 bug 很浪費時間，因為你會先在應用層面亂查，最後才發現地基根本沒打好。這也是我現在看 Windows 上的 Docker 安裝流程時，第一個先看底層條件的原因。\u003C\u002Fp>\u003Cp>實操寫法：在你開始裝之前，先確認這台 Windows 能不能真的跑 Linux containers。把 Windows 版本相容性、虛擬化、WSL 這三件事列成前置條件。你如果是在幫團隊做 onboarding，這些東西要跟下載連結放在同一份文件，別藏在沒人看的 wiki 深處。\u003C\u002Fp>\u003Cul>\u003Cli>先確認 Windows 版本符合 Docker Desktop 要求。\u003C\u002Fli>\u003Cli>檢查虛擬化是否啟用，Windows 功能是否可用。\u003C\u002Fli>\u003Cli>常用機器要定期更新 WSL kernel，別讓它停在舊狀態。\u003C\u002Fli>\u003C\u002Ful>\u003Ch2>重開機不是建議，是流程的一部分\u003C\u002Fh2>\u003Cp>官方文件寫「you may be prompted to restart your machine」，我看到這句通常會直接翻成：你大概率就是要重開。Windows 這套東西只要碰到 WSL 或虛擬化，很多變更都不是即時生效。你不重開，後面就會看到一堆半套狀態，然後開始懷疑安裝器有問題。\u003C\u002Fp>\n\u003Cfigure class=\"my-6\">\u003Cimg src=\"https:\u002F\u002Fxxdpdyhzhpamafnrdkyq.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Fcovers\u002Finline-1784656979810-v3mh.png\" alt=\"Windows 裝 Docker Desktop 先搞定 WSL\" class=\"rounded-xl w-full\" loading=\"lazy\" \u002F>\u003C\u002Ffigure>\n\u003Cp>我以前很愛跳過重開機，因為我想快點把事情做完。結果通常是晚點花更多時間查錯。這件事在 Windows 上特別明顯。Docker Desktop 也一樣，你如果把重開當成可選項，後面常常會遇到一些很詭異的失敗，重開一次就沒事，然後你還要假裝自己剛剛沒有白忙。\u003C\u002Fp>\u003Cp>實操寫法：安裝 WSL、安裝 Docker Desktop、照提示重開，再開始做任何正式測試。你如果在寫公司內部文件，請直接把「需要重開」寫死，不要寫得像禮貌性提醒。開發者看到「可選」兩個字，多半就會先跳過。\u003C\u002Fp>\u003Cp>重開後，先開 Docker Desktop 看 engine 狀態，再跑一個最小容器測試。托盤圖示亮綠燈不代表什麼，只有真的跑過容器才算數。\u003C\u002Fp>\u003Ch2>官方文件要看，但要用 sysadmin 的腦袋看\u003C\u002Fh2>\u003Cp>我對 Docker Docs 的態度一直很一致：它有用，但你不能把它當流程書。它比較像產品頁包著文件外皮，該給你的連結有給，該提示的依賴也有提示，但它不會替你\u003Ca href=\"\u002Fnews\u002Fsurvey-of-large-language-models-zh\">整理\u003C\u002Fa>成一條最短路徑。這就是為什麼很多人照著看還是會卡。\u003C\u002Fp>\u003Cp>所以我讀這類文件的方式很粗暴：先找依賴鏈，再找順序，最後把裝飾性文字丟掉。對 Windows 上的 Docker Desktop 來說，真正的順序只有四步：先更新或安裝 WSL，再重開機，接著裝 Docker Desktop，最後驗證 runtime。這條順序一旦亂掉，就很容易出現「裝好了但不能用」的狀態。\u003C\u002Fp>\u003Cp>實操寫法：把官方文件當來源，不要當工作流。你自己的團隊文件要自己整理成 checklist。尤其是多台 Windows 開發機的環境，最好把 WSL 放到基礎映像或 onboarding 文件裡，別讓每個人都重新踩一次坑。\u003C\u002Fp>\u003Cul>\u003Cli>讀文件時先抓依賴，不要先看按鈕。\u003C\u002Fli>\u003Cli>把 vendor 文件翻成你自己的步驟表。\u003C\u002Fli>\u003Cli>安裝和驗證分開寫，不要混成一坨。\u003C\u002Fli>\u003C\u002Ful>\u003Ch2>驗證比自我感覺良好重要\u003C\u002Fh2>\u003Cp>Docker Desktop 裝完之後，我從來不會只看它有沒有開起來。UI 正常不代表 backend 正常，尤其在 Windows 上，很多失敗都是部分成功：程式開了、WSL 也在、但容器就是跑不起來。這種情況最容易讓人誤判。\u003C\u002Fp>\u003Cp>所以我的習慣是，安裝完、重開完，立刻跑一個真的容器測試。你要驗證的是 runtime，不是圖示。這一步很重要，因為你現在還記得剛剛改了哪些東西，出問題時也比較容易回頭查。拖太久再驗證，\u003Ca href=\"\u002Fnews\u002Fevaluating-memory-in-llm-agents-zh\">記憶\u003C\u002Fa>就散了，最後只剩下「我好像有裝過」這種模糊印象。\u003C\u002Fp>\u003Cp>實操寫法：打開 PowerShell 或你慣用的終端機，先看 WSL 狀態，再看 Docker 版本，最後跑一個 hello-world 容器。只要這一步過了，才算真的裝好。失敗的話，先修平台，不要急著碰你的 app stack。\u003C\u002Fp>\u003Cp>如果你是寫給團隊看的文件，驗證指令要跟安裝步驟放在同一頁。少一個頁面，少一個人偷懶。\u003C\u002Fp>\u003Ch2>我會怎麼交代給同事\u003C\u002Fh2>\u003Cp>如果今天是我交接給同事，我會把話講得很短：先把 WSL 更新好，再裝 Docker Desktop，重開機，最後跑容器驗證。其他細節都先不要管，因為這四步沒過，後面討論什麼 image、volume、network 都是空談。\u003C\u002Fp>\u003Cp>這種講法聽起來很土，但土的方法最耐用。Windows 上的 Docker 安裝最怕的就是文件寫得太漂亮，結果新人照著做還是卡在半套狀態。你只要把流程壓到最短，問題就比較容易定位，也比較容易重現。\u003C\u002Fp>\u003Cp>實操寫法：把安裝流程寫成固定模板，讓每台機器、每個新同事都照同一套做。能重複，才有資格叫流程。不能重複的東西，只是一次性的運氣。\u003C\u002Fp>\u003Ch2>可抄的模板\u003C\u002Fh2>\u003Cpre>\u003Ccode># Docker Desktop on Windows install checklist\n\n## 先做這些\n- 確認 Windows 支援 WSL 2\n- 先安裝或更新 WSL\n- 如果系統提示，先重開機\n\n## 安裝 Docker Desktop\n- 從官方 Docker Docs 下載 Windows 版 Docker Desktop\n- 執行安裝程式\n- 照環境接受必要提示\n- 讓安裝完整跑完\n\n## 安裝後\n- 如果有提示，立刻重開機\n- 開啟 Docker Desktop，等 engine 變成 healthy\n- 用真的容器跑一次驗證\n\n## 快速驗證\npowershell\nwsl --status\ndocker version\ndocker run --rm hello-world\n\n\n## 如果怪怪的\n- 再確認 WSL 是否已安裝、版本是否正確\n- 再確認虛擬化是否啟用\n- 每次改 host 層設定後都重開一次\n- 先驗證通過，再碰你的 app stack\n\n## 團隊 onboarding 註記\n- WSL 要排在 Docker Desktop 前面\n- 不要把 Docker Desktop 寫成 Windows 上的獨立安裝\n- 驗證指令要跟安裝步驟放同一份文件\u003C\u002Fcode>\u003C\u002Fpre>\u003Cp>這份拆解的原始來源是 \u003Ca href=\"https:\u002F\u002Fdocs.docker.com\u002Fdesktop\u002Fsetup\u002Finstall\u002Fwindows-install\u002F\">Docker Docs：Install Docker Desktop on Windows\u003C\u002Fa>。我前面的整理是把官方頁面和它連到的 WSL 資訊重新排成可執行流程，屬於衍生整理，不是官方 checklist。\u003C\u002Fp>\u003Cp>WSL 的部分我也對照了 \u003Ca href=\"https:\u002F\u002Flearn.microsoft.com\u002Fwindows\u002Fwsl\u002Finstall\">Microsoft 的 WSL 安裝指南\u003C\u002Fa> 和 \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fmicrosoft\u002FWSL\u002Freleases\">WSL GitHub Releases\u003C\u002Fa>。如果你要最短路徑，先看這兩個，再回來裝 Docker Desktop，會少很多冤枉路。\u003C\u002Fp>","我把 Windows 上裝 Docker Desktop 的流程拆成可照抄清單：先處理 WSL、再安裝、重開機、最後驗證。","docs.docker.com","https:\u002F\u002Fdocs.docker.com\u002Fdesktop\u002Fsetup\u002Finstall\u002Fwindows-install\u002F",null,"https:\u002F\u002Fxxdpdyhzhpamafnrdkyq.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Fcovers\u002Finline-1784656979438-lzmx.png","tools","zh","41d705ff-ae43-457b-be0c-626acf99abfd",[17,18,19,20,21],"Docker Desktop","Windows","WSL 2","install checklist","container verification",[23,24,25],"Windows 上裝 Docker Desktop，WSL 2 先處理好，後面才不會半套成功。","重開機是安裝流程的一部分，不要當成可跳過的提示。","裝完一定要用真的容器驗證，別只看 UI 正常。",0,"2026-07-21T18:02:36.907589+00:00","2026-07-21T18:02:36.893+00:00","ba6d6297-f14c-476e-9e54-b9636ba2b41e",{"tags":31,"relatedLang":32,"relatedPosts":36},[],{"id":15,"slug":33,"title":34,"language":35},"docker-desktop-windows-install-flow-en","Docker Desktop on Windows in one clean install flow","en",[37,43,49,55,61,67],{"id":38,"slug":39,"title":40,"cover_image":41,"image_url":41,"created_at":42,"category":13},"3f39f92e-fd44-43f8-a14c-a43e363b0eaa","grok-4-5-cursor-launch-benchmarks-pricing-zh","Grok 4.5 登上 Cursor，$2\u002F$6 開賣","https:\u002F\u002Fxxdpdyhzhpamafnrdkyq.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Fcovers\u002Finline-1784536377664-m9em.png","2026-07-20T08:32:24.195451+00:00",{"id":44,"slug":45,"title":46,"cover_image":47,"image_url":47,"created_at":48,"category":13},"1c9e6787-9ad4-4d49-9800-b54f71149e4e","agt-governed-agent-calls-zh","AGT 把代理呼叫變受管動作","https:\u002F\u002Fxxdpdyhzhpamafnrdkyq.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Fcovers\u002Finline-1784405026107-79g5.png","2026-07-18T20:03:17.40007+00:00",{"id":50,"slug":51,"title":52,"cover_image":53,"image_url":53,"created_at":54,"category":13},"769444fb-48a3-41d5-8383-f6867ff53232","openclaw-v2026-7-1-control-ui-workspace-zh","OpenClaw v2026.7.1 把控制台變工作區","https:\u002F\u002Fxxdpdyhzhpamafnrdkyq.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Fcovers\u002Finline-1784358229254-0dil.png","2026-07-18T07:03:25.506405+00:00",{"id":56,"slug":57,"title":58,"cover_image":59,"image_url":59,"created_at":60,"category":13},"7bed70e8-39cf-45bb-8f71-6ddd31ad2317","openai-screenless-speaker-turns-chatgpt-companion-zh","OpenAI 無螢幕喇叭把 ChatGPT 變陪伴","https:\u002F\u002Fxxdpdyhzhpamafnrdkyq.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Fcovers\u002Finline-1784289800548-z10g.png","2026-07-17T12:02:53.189236+00:00",{"id":62,"slug":63,"title":64,"cover_image":65,"image_url":65,"created_at":66,"category":13},"2151fdfb-10ca-419c-b4f6-ce36d6ff435f","scale-turns-cuda-code-into-portable-gpu-builds-zh","SCALE 讓 CUDA 變可攜 GPU 編譯","https:\u002F\u002Fxxdpdyhzhpamafnrdkyq.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Fcovers\u002Finline-1784210602836-wqlf.png","2026-07-16T14:02:55.366575+00:00",{"id":68,"slug":69,"title":70,"cover_image":71,"image_url":71,"created_at":72,"category":13},"194cb6f2-9263-4fe4-93f5-20f44ca1bdeb","2027-ai-ml-internship-jobs-daily-zh","2027 AI\u002FML 實習職缺每天更新","https:\u002F\u002Fxxdpdyhzhpamafnrdkyq.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Fcovers\u002Finline-1784192579088-va17.png","2026-07-16T09:02:31.951176+00:00",[74,79,84,89,94,99,104,109,114,119],{"id":75,"slug":76,"title":77,"created_at":78},"855cd52f-6fab-46cc-a7c1-42195e8a0de4","surepath-real-time-mcp-policy-controls-zh","SurePath 推出即時 MCP 政策控管","2026-03-26T07:57:40.77233+00:00",{"id":80,"slug":81,"title":82,"created_at":83},"9b19ab54-edef-4dbd-9ce4-a51e4bae4ebb","mcp-in-2026-the-ai-tool-layer-teams-use-zh","2026 年 MCP：團隊真的在用的 AI 工具層","2026-03-26T08:01:46.589694+00:00",{"id":85,"slug":86,"title":87,"created_at":88},"af9c46c3-7a28-410b-9f04-32b3de30a68c","prompting-in-2026-what-actually-works-zh","2026 提示工程，真正有用的是什麼","2026-03-26T08:08:12.453028+00:00",{"id":90,"slug":91,"title":92,"created_at":93},"05553086-6ed0-4758-81fd-6cab24b575e0","garry-tan-open-sources-claude-code-toolkit-zh","Garry Tan 開源 Claude Code 工具包","2026-03-26T08:26:20.068737+00:00",{"id":95,"slug":96,"title":97,"created_at":98},"042a73a2-18a2-433d-9e8f-9802b9559aac","github-ai-projects-to-watch-in-2026-zh","2026 必看 20 個 GitHub AI 專案","2026-03-26T08:28:09.619964+00:00",{"id":100,"slug":101,"title":102,"created_at":103},"a5f94120-ac0d-4483-9a8b-63590071ac6a","claude-code-vs-cursor-2026-zh","Claude Code 與 Cursor 深度對比：202…","2026-03-26T13:27:14.279193+00:00",{"id":105,"slug":106,"title":107,"created_at":108},"0975afa1-e0c7-4130-a20d-d890eaed995e","practical-github-guide-learning-ml-2026-zh","2026 機器學習入門 GitHub 實用指南","2026-03-27T01:16:49.712576+00:00",{"id":110,"slug":111,"title":112,"created_at":113},"bfdb467a-290f-4a80-b3a9-6f081afb6dff","aiml-2026-student-ai-ml-lab-repo-review-zh","AIML-2026：像課綱的學生實驗 Repo","2026-03-27T01:21:51.467798+00:00",{"id":115,"slug":116,"title":117,"created_at":118},"80cabc3e-09fc-4ff5-8f07-b8d68f5ae545","ai-trending-github-repos-and-research-feeds-zh","AI Trending：把 AI 資源收成一張表","2026-03-27T01:31:35.262183+00:00",{"id":120,"slug":121,"title":122,"created_at":123},"3ce6e6e2-bac5-463e-9f8d-45caabcc61f7","awesome-ai-for-science-research-tools-map-zh","AI 科研工具清單，開始像地圖了","2026-03-27T01:46:50.521945+00:00"]