👌

Dify ナレッジ登録が「キューイング中」で進まない原因と対応策

に公開

Dify ナレッジ登録が「キューイング中」で進まない原因と対応策

🧩 問題の概要

Dify のナレッジ登録画面で、アップロードしたファイルのステータスが「キューイング中」のまま進まない現象が発生した。


✅ 結論

原因は Celery Worker コンテナが起動していなかったこと。

Dify のナレッジ処理(ファイル解析・埋め込み生成・ベクトルDB登録)はすべて worker サービスによって非同期で処理されるため、これが動いていないと処理が始まらない。


🔍 原因の詳細

観点 内容
docker-compose.yaml worker: セクションの定義は存在していた
docker ps 結果 初期状態では worker コンテナが存在しなかった
docker compose ps -a 結果 worker コンテナの作成時刻は他サービスよりはるかに新しかった
推論 初回の docker compose up -dworker を含めずに実行していた可能性が高い

🛠 対応手順

  1. worker コンテナが存在しないことを確認:

    docker ps | grep worker
    
  2. docker-compose.yamlworker サービスがあることを確認:

    worker:
      image: langgenius/dify-api:1.0.1
      command: ["celery", "-A", "api.worker", "worker", "--loglevel=INFO"]
      environment:
        MODE: worker
        ...
    
  3. worker を起動:

    docker compose -f docker/docker-compose.yaml up -d worker
    
  4. 起動後の状態確認:

    docker ps | grep worker
    docker compose logs -f worker
    
  5. 数分後、ナレッジ登録のステータスが「処理中」「完了」へと進行することを確認。


🔁 再発防止策

✔ 常に全サービスを起動する

docker compose -f docker/docker-compose.yaml up -d

Discussion