Dify 在 Windows Docker Desktop 安裝實戰:解決 Hyper-V 檔案共享 EOF、Postgres 0700 權限重啟,並比較 Ollama Qwen3 與 Claude 回答
安裝
$ docker compose up -d
過程中一直出現提示

出現錯誤

這是 Hyper-V 模式的限制。容器要掛載本機資料夾時,那個資料夾必須先登記在 Docker 的共享清單裡。Dify compose 掛載十幾個路徑(volumes/app/storage、ssrf_proxy/*.sh、nginx/conf、certbot/conf…),而每個路徑都會跳一次視窗詢問。
每一次點擊 Yes,Docker 會重新設定一次檔案共享,這時候引擎連線會中斷一下。如果這時候 compose 正好在建立容器,就出現 EOF 錯誤,所以 nginx 才會建立失敗。
設定共享整個 dify 目錄
- Docker Desktop → Settings → Resources → File sharing
- 加入 J:\Git\temp\dify(或乾脆加整個 J:\)
- 按 Apply & restart,等引擎變綠色
重新執行:
cd /d J:\Git\temp\dify\docker
docker compose up -d
再次執行結果:

b_postgres 一直出現 restarting warning
- compose 把 Postgres 的資料放在
J:\...\volumes\db\data,Windows 磁碟上的資料夾。 - 在 Hyper-V 模式下,Docker 沒辦法把這個資料夾的權限設成 Postgres 要求的 0700,Postgres 每次初始化都失敗,就造成一直重啟。
- 新增了
J:\Git\temp\dify\docker\docker-compose.override.yaml,讓 Postgres 的資料改存在 Docker 自己管理的 volumedocker_dify_pgdata。另外,官方的docker-compose.yaml沒做變動,之後如果升級 Dify 就不會造成衝突。 - 另外的問題,api 比資料庫早啟動,所以資料表還沒建。我重啟了 api、worker、worker_beat、plugin_daemon,api 重啟時跑完了 migration(
Database migration successful!)。

之後要注意:
不要執行
docker compose down -v,加了-v會把資料庫一起刪掉。平常停止用docker compose down就好。
- 下次開機,先打開 Docker Desktop,等到 Engine running,再到
J:\Git\temp\dify\docker執行docker compose up -d。
打開 http://localhost/install 建立管理員帳號

切換到 集成,安裝 OpenAI、Anthropic

安裝 OpenAI 插件

配置金燿

然後切換到 工作室,建立空白應用

選擇聊天助手

創建後進入編排,在右上角選擇剛剛安裝的 ollama

比較兩個模型回答,第一句話用了 ollma,再切換到 claude 輸入第二句話

也可以使用多模型進行除錯

可以看到兩個模型的輸出結果,進行比對


滑上去回復block時可以看到 token 跟時間花費

可以看到
- ollama qwen3.8b,先思考 4.5 秒才開始回答
- qwen 回答的比較籠統,「客服部門查產品規格」
- 并且兩者的逗點不同,claude是半形而 qwen 是全形