Dify から Ollama に接続するための完全手順(WSL + Docker)

# ① 共通ネットワーク dify-net を作成
Dify コンテナと Ollama コンテナが相互通信できるようにするため:

docker network create dify-net


# ② Ollama を dify-net 上で起動

docker run -d \
  --gpus=all \
  --network dify-net \
  -v ollama:/root/.ollama \
  -p 11434:11434 \
  --name ollama \
  ollama/ollama


# ③ Dify の docker-compose.yaml を編集
## 🔧 1. api サービスに OLLAMA_BASE_URL とネットワーク追加

services:
  api:
    ...
    environment:
      ...
      LLM_PROVIDER: ollama
      OLLAMA_BASE_URL: http://ollama:11434
    networks:
      - ssrf_proxy_network
      - default
      - dify-net  # ←追加!


## 🔧 2. worker サービスにも同様に追加(必要に応じて)

services:
  worker:
    ...
    environment:
      ...
      LLM_PROVIDER: ollama
      OLLAMA_BASE_URL: http://ollama:11434
    networks:
      - ssrf_proxy_network
      - default
      - dify-net


## 🔧 3. plugin_daemon にも networks を追加(←これが詰まりポイント)

services:
  plugin_daemon:
    ...
    networks:
      - default
      - dify-net


## 🔧 4. networks: セクション末尾に外部ネットワーク定義

networks:
  ...
  dify-net:
    external: true


# ④ Dify コンテナを再起動

docker compose down
docker compose up -d


# ⑤ 接続確認(オプション)
Dify の api または plugin_daemon コンテナから curl で接続確認:

docker exec -it docker-api-1 curl http://ollama:11434
# または
docker exec -it docker-plugin_daemon-1 curl http://ollama:11434


# ⑥ Dify 管理画面でモデルを追加
モデルプロバイダー:Ollama
モデル名:llama3、phi3 など(※ ollama pull llama3 で事前に取得しておく)
Base URL : http://ollama:11434