DifyのGitHubリポジトリを完全解説!セルフホスト・Docker構築・プラグイン活用まで
室谷今回はDifyのGitHubについて話していきましょうか。「dify github」って調べる人が結構いるんですよね。
でも何を求めてるのかが人によってバラバラで・・・
でも何を求めてるのかが人によってバラバラで・・・
テキトー教師そうなんですよね。コミュニティのメンバーさんから「GitHubのどこを見ればいいかわからない」って声が多くて。
リポジトリの構造自体、初めて見ると結構複雑ですよね。
リポジトリの構造自体、初めて見ると結構複雑ですよね。
室谷Difyの公式GitHubリポジトリは
github.com/langgenius/dify なんですが、2026年4月時点で星が13.5万個を超えてるんですよ。オープンソースのLLMアプリ開発プラットフォームとしては世界トップクラスの数字で・・・
テキトー教師13.5万スターって凄まじいですね。フォーク数も2.1万以上あって。
この数字が示すのは「世界中の開発者が実際に使って、自分のプロジェクトに取り込んでいる」ということですよね。
この数字が示すのは「世界中の開発者が実際に使って、自分のプロジェクトに取り込んでいる」ということですよね。
室谷正直、僕自身もDifyを毎日使っていた時期があって、GitHubのリリースページを定期的にチェックしてました。新しいバージョンが出るたびに機能が増えていくのが面白くて。
2026年4月時点の最新はv1.13.3ですね。
2026年4月時点の最新はv1.13.3ですね。
テキトー教師160以上のリリースを重ねてきてるわけですよね。開発のスピードが速い。
講座で教えていて気づくのが、バージョンアップのたびにUIが変わるから、スクリーンショットが古くなるのが困るんですよ(笑)
講座で教えていて気づくのが、バージョンアップのたびにUIが変わるから、スクリーンショットが古くなるのが困るんですよ(笑)
室谷それはわかりますw でもそれだけ活発に開発されてるということでもあるので、GitHubのStarをしておくと新しいリリースを即通知で受け取れますよね。公式も「Star Dify on GitHub and be instantly notified of new releases」って推奨してるくらいで。
テキトー教師今回はそのGitHubの全貌を整理していきましょうか。リポジトリの種類、セルフホストの方法、プラグインリポジトリ、ワークフロー集まで。
これを読めばDifyのGitHub周辺がまるごとわかる構成にしていきましょう。
これを読めばDifyのGitHub周辺がまるごとわかる構成にしていきましょう。
DifyのGitHubリポジトリ一覧と使い分け

室谷まず整理しておきたいのが、Difyには複数のGitHubリポジトリがある、ということですね。メインの
langgenius/dify だけじゃないんですよ。
テキトー教師そうですね。主要なリポジトリはこういう構成です。
| リポジトリ名 | 用途 |
|---|---|
| langgenius/dify | メインのDifyプラットフォーム(セルフホスト用) |
| langgenius/dify-official-plugins | 公式プラグイン集 |
| langgenius/dify-plugin-sdk | プラグイン開発用SDK |
| svcvit/Awesome-Dify-Workflow | コミュニティ制作のワークフロー集(非公式) |
室谷この4つを押さえておけばひとまずOKという感じですね。
langgenius/dify はDify本体で、セルフホストするときに使うやつ。dify-official-plugins は公式が作ってるプラグインが入ってます。
テキトー教師Awesome-Dify-Workflow は非公式ですけど、コミュニティ発のワークフロー集として1万スターを超えていて、実用的なものが多いんですよ。講座でも「すぐ使えるワークフローが欲しい」って人にはここを紹介してます。
室谷メインの
langgenius/dify の構成も面白くて。フロントエンド(Next.js)、バックエンド(Python)、Dockerの設定ファイルが全部1つのリポジトリに入ってるモノリポ構成になってるんですよね。langgenius/difyリポジトリの構成
テキトー教師メインリポジトリの主要ディレクトリを整理しておきますね。
| ディレクトリ | 内容 |
|---|---|
/web | フロントエンド(Next.js) |
/api | バックエンドAPI(Python) |
/docker | Docker Compose設定ファイル群 |
/sdks | 各言語向けSDK |
室谷セルフホストするときに触るのはほぼ
/docker 配下ですね。docker-compose.yaml と .env ファイルをいじるだけで動くようになってます。
テキトー教師Dockerを使わずソースコードから直接起動する方法もありますが、ほとんどの場合はDocker Composeで十分です。コミュニティのメンバーさんも99%はDockerで立てています。
GitHubからDifyをセルフホストする手順

室谷ここから具体的な手順を見ていきましょう。GitHubからDifyをクローンして、Docker Composeでセルフホストするのが基本の流れです。
テキトー教師前提条件として、マシンのスペックが最低限必要なので確認しておきましょう。
- CPU: 2コア以上
- RAM: 4GB以上
- OS: macOS 10.14以降 / Linux(Docker 19.03以上) / Windows(WSL2 + Docker Desktop)
室谷これは最低要件なので、実際に快適に使うなら4コア・8GBあった方がいいですね。MYUUUでサーバーに立てるときは最低でも2コア・8GBで構成してます。
テキトー教師Windowsの場合はWSL2(Windows Subsystem for Linux)を有効にした上でDocker Desktopを入れる必要があります。これ、最初のハードルになる人が多いんですよね。
ステップ1: GitHubからDifyをクローン
室谷実際のコマンドはこうなります。
git clone --branch "$(curl -s https://api.github.com/repos/langgenius/dify/releases/latest | jq -r .tag_name)" https://github.com/langgenius/dify.git
テキトー教師この
--branch の部分がポイントで、GitHubのAPIから最新のリリースタグを自動で取得してクローンしてくれるんですよ。main ブランチをクローンしてしまうと開発版になるので、本番では最新のリリースタグを指定するのが正しい作法です。
室谷シンプルにクローンしたい場合はこれでもOKですけどね。
git clone https://github.com/langgenius/dify.git
テキトー教師ただ、メインブランチは開発途中のコードが入ることもあるので、安定性重視ならリリースタグ版を推奨します。
git clone https://github.com/langgenius/dify.git でクローンした後、git tag で確認してから git checkout v1.13.3 のように特定バージョンに切り替えることもできますよ。ステップ2: Docker Composeで起動
室谷クローンしたら docker ディレクトリに移動して、環境変数ファイルをコピーして起動します。
cd dify/docker
cp .env.example .env
docker compose up -d
テキトー教師.env.example を .env にコピーするのが重要で、ここに各種APIキーやデータベースの設定が入ってます。最初はデフォルト設定のままで動きますが、本番環境では SECRET_KEY を変更することを強くおすすめします。
室谷コンテナの起動状況は
docker compose ps で確認できます。全部 Up または healthy になっていればOKです。docker compose ps
テキトー教師起動するコンテナは合計11個あります。api、worker、worker_beat、web、plugin_daemonの5コアサービスと、weaviate、db_postgres、redis、nginx、ssrf_proxy、sandboxの6つの依存コンポーネントです。
室谷起動したら
http://localhost/install にアクセスして管理者アカウントを作成すれば使えます。サーバーに立てる場合は http://サーバーのIPアドレス/install でアクセスできます。よくあるエラーと対処法
テキトー教師セルフホストで詰まるポイントをいくつか整理しておきますね。コミュニティのメンバーさんがよくハマるのがこのあたりです。
室谷504 Gateway Timeoutは結構多いですね。長い処理をするワークフローを実行すると出ることがあって・・・
テキトー教師あれはNginxのタイムアウト設定の問題です。
docker/nginx/nginx.conf の proxy_read_timeout を延ばすと解決することが多いです。
室谷502 Bad Gatewayはコンテナの起動順序の問題が多くて、
docker compose restart nginx で直ることがよくあります。
テキトー教師Windowsで動かす場合、WSL2のLinuxファイルシステム側にソースコードを置かないとパフォーマンスが極端に落ちるので、Cドライブ直下ではなくWSL2の
/home/ユーザー名/ 配下に置くようにしましょう。dify docker ubuntuでも同様で、Linuxネイティブ環境の方がはるかに安定します。
室谷setup 500や502はPostgreSQLの初期化が完了する前にAPIが起動しようとして失敗するケースが多いです。しばらく待ってから
docker compose restart すると解決することが多い。DifyのGitHubプラグインリポジトリを活用する
室谷次にプラグインの話をしましょう。Difyはv1.0以降でプラグインエコシステムが本格化していて、GitHubにプラグイン専用のリポジトリがあるんですよね。
テキトー教師langgenius/dify-official-plugins ですね。OpenAI、Google、Anthropic、OllamaなどのAIモデルプロバイダーや、各種ツール系のプラグインが入っています。
室谷プラグインの開発側は
langgenius/dify-plugin-sdk を使います。Pythonでプラグインを作れるSDKで、自分でDify向けの独自プラグインを作りたい場合に使います。
テキトー教師自分でプラグインを作って公開したい場合や、既存プラグインをカスタマイズしたい場合に使いますね。Dify Marketplaceに公開するためのガイドラインも同じリポジトリにあります。
室谷GitHubでサードパーティのプラグインを探すときは「dify plugin github」で検索するとさまざまな個人・企業製のものが見つかりますね。
Dify MCPとGitHubの関係
テキトー教師最近「dify github mcp」や「dify mcp github」で検索してくる人が増えていて。これはDifyをMCP(Model Context Protocol)のサーバーとして使うか、逆にDifyからMCPサーバーを呼び出す使い方ですね。
室谷僕はDifyのワークフローをRemote MCPサーバー化するのをよくやりますね。たとえばYouTubeの競合分析ができるリモートMCPをDifyで作って、それをClaude Desktopに繋いで使う感じで・・・
テキトー教師その使い方、すごく実用的ですよね。DifyのRAGや複雑なワークフローをMCPでラップすることで、AIアシスタントから直接呼び出せるようになる。
室谷GitHubには
dify mcp server の実装例もいくつかあって、コミュニティ製のものが多数公開されています。ただ公式ではないものが多いので、READMEを読んでメンテナンス状況を確認してから使うのがいいですね。Awesome Dify Workflowで使えるワークフローを活用する
室谷コミュニティ発の
svcvit/Awesome-Dify-Workflow の話もしておきたいですね。GitHubスター1万超えのワークフロー集で・・・
テキトー教師DSLファイル(
.yaml)の形式でワークフローが公開されていて、DifyのGUIから「DSLファイルをインポート」すれば即使えるんですよね。コミュニティのメンバーさんにもよく紹介してます。
室谷何百種類ものワークフローがカテゴリ別に整理されていて、ウェブサイトのスクレイピング、SEO記事生成、翻訳、コードレビューなど実用的なものが多いです。
テキトー教師使い方は簡単で、GitHubからDSLファイルをダウンロードして、Difyの「スタジオ」→「DSLファイルをインポート」から読み込むだけです。
室谷一点注意があって、ワークフロー内で使うモデルやAPIキーは自分で設定し直す必要があります。モデル設定が古いバージョンのままだったりすることもあるので。
テキトー教師あと、ワークフローによっては外部サービスのAPIキーが必要なものもあります。READMEや設定を必ず確認してから使いましょう。
「awesome dify workflow github」で検索するとこのリポジトリが出てきます。
「awesome dify workflow github」で検索するとこのリポジトリが出てきます。
DifyのGitHubでバージョン管理と更新をする
室谷セルフホストしてる人にとって気になるのが、どうやってアップデートするか、ですよね。
テキトー教師GitHubのリリースページ()で最新バージョンを確認して、アップグレードガイドに従って更新するのが基本です。
dify github releases でも直接たどり着けます。
室谷更新の基本コマンドはこうなります。
cd dify/docker
git pull
docker compose down
docker compose up -d
テキトー教師更新前に
.env.example が変更されていないか確認するのが重要です。新しいバージョンで環境変数が追加されていることがあって、.env に反映しないと動かなかったりします。
室谷これ、意外と見落とす人が多いんですよね・・・。リリースノートに「環境変数の変更あり」と書いてあったら必ずチェックするクセをつけた方がいいです。
テキトー教師GitHubのリポジトリにスターしてウォッチ設定をしておくと、新しいリリースの通知メールが来るようになりますよ。
git pull でエラーが出たときの対処
室谷git pull したときにコンフリクトが起きることもあって・・・特に .env や docker-compose.yaml を直接編集してた場合に起きやすいです。
テキトー教師そういう場合は、まず変更点を退避(
git stash)してプルして、それから変更を戻すのがやりやすいですね。本来は .env を直接いじるのではなく、環境変数で上書きする運用が理想です。
室谷本番環境では
docker-compose.yaml を直接編集せず、docker-compose.override.yaml を使って差分だけ書くのがベストプラクティスですよ。これだと git pull しても衝突が起きないので。DifyのGitHubリポジトリのライセンスについて
室谷ここは地味に大事な話で、DifyのライセンスはApache 2.0ベースですが「追加条件付き」なんですよね。
テキトー教師「Dify Open Source License」と呼ばれていて、Apache 2.0に追加条件が付いています。整理すると・・・
- Community Edition(無料): セルフホスト可、商用利用可(ただし制限あり)
- Enterprise Edition: 追加機能あり、別途ライセンス契約
- DifyをSaaSとして再提供する場合は別途確認が必要
室谷個人や小さな会社で社内ツールとして使う分には基本的に問題ないです。ただ「DifyをSaaSとして提供する」「大規模なマルチテナント運用をする」場合はライセンスの確認が必要です。
テキトー教師GitHub上のLICENSEファイルに詳細が書いてあります。 で確認できますよ。
室谷室谷の著書「お金を使わず、AIを働かせる『Dify』活用」でもこのあたり触れてますが、セルフホストは自由にできるし、社内システムとして使う分には問題ないので安心して使ってください。
DifyのGitHub連携機能(GitLabも含む)
室谷ここまでGitHubリポジトリの話をしてきましたが、DifyはGitHub、GitLabとの連携機能もあるんですよね。
テキトー教師そうですね。Difyのワークフローを使ってGitHubのIssueに自動返信したり、GitLab MRのコードレビューを自動化したり、といった活用事例が増えてます。
室谷GitLabとの連携で面白いのはWebhook連携で、GitLab MR(Merge Request)が作成されたときにDifyのワークフローを起動して、自動でコードレビューコメントを書く、というのが実用的なユースケースですよね。
テキトー教師講座でも「Dify gitlab code review」や「Dify github actions」連携を教えています。基本的な仕組みは、GitのWebhookイベントをDifyのAPIエンドポイントに向けるだけです。
室谷DifyにはWebhookを受け取るAPIが標準でついているので、GitHub ActionsやGitLab CIからDifyのワークフローを呼び出すことも簡単です。CI/CDパイプラインにAIの力を組み込む、という感じで・・・
テキトー教師ナレッジベースとGitHub、GitLabを組み合わせる使い方も面白いですよね。コードリポジトリのドキュメントをナレッジベースに取り込んで、「このコードについて教えて」という質問に答えるAIアシスタントを作ったりできます。
DifyのGitHub利用で押さえておきたいポイント
室谷ここまでの話を振り返って、GitHubを使うシーンをざっと整理してみましょうか。
テキトー教師ですね。目的別に整理するとこうなります。
| 目的 | 使うGitHub機能 |
|---|---|
| セルフホスト | git clone + Docker Compose |
| バージョンアップ | git pull + リリースページ確認 |
| プラグイン探し | dify-official-plugins リポジトリ |
| ワークフロー活用 | Awesome-Dify-Workflow |
| バグ報告・機能要望 | GitHub Issues |
| コード貢献 | Pull Request |
室谷GitHubのIssueを活用するのも大事で、Difyのバグを見つけたときや機能リクエストを出したいときはここが窓口です。英語での投稿が基本ですが、日本語でもコメントしている人はいますね。
テキトー教師GitHubのDiscussionsも活用されていて、セルフホストのトラブルシューティングや設定についての質問と回答が蓄積されています。公式ドキュメントで解決しない場合はここを検索するのが早かったりします。
室谷.AI(ドットエーアイ)コミュニティでもDifyのGitHub活用についていろんな情報が共有されてるんですが、「docker deploy dify」「dify github docker compose」あたりで検索してくる人が多くて、実際にセルフホストで運用している人もかなりいますね。
DifyのGitHubに関するよくある質問
テキトー教師ここで、よく出る質問をまとめておきますね。
Q: DifyをDockerなしでインストールできますか?
室谷「deploy dify without docker」「dify without docker」で検索する人も多いですが、公式ではDocker Composeが推奨です。Dockerなしでもソースコードから起動できますが、バックエンドのPython環境設定やフロントエンドのビルドが必要で、かなり手間がかかります。
基本的にはDocker Composeを使いましょう。
基本的にはDocker Composeを使いましょう。
Q: DifyをWindowsで動かせますか?
テキトー教師「dify windows without docker」で検索する人もいますが、WindowsはWSL2 + Docker Desktopが公式推奨です。「dify ubuntu」「dify ubuntu 24.04」でやっているような、Linux上でのDocker運用と実質的に同じになります。
Q: DifyのDockerイメージはDocker Hubで入手できますか?
室谷langgenius/dify-web などが Docker Hub(docker hub langgenius dify web)で公開されていて、docker compose up -d を実行すると自動的にDocker Hubからイメージが取得されます。Q: セルフホスト版とクラウド版の違いは?
テキトー教師機能的にはほぼ同じです。セルフホスト版(Community Edition)はデータを自分のサーバーに保持でき、APIキーの直接設定が可能。
Dify Cloud(クラウド版)はゼロセットアップで始められ、サンドボックスプランでは200回の無料GPT-4呼び出しがついています。
Dify Cloud(クラウド版)はゼロセットアップで始められ、サンドボックスプランでは200回の無料GPT-4呼び出しがついています。
まとめ:DifyのGitHubをフル活用しよう
室谷今回はDifyのGitHub周辺を全部さらいましたが、改めて整理するとこうなりますね。
テキトー教師はい。まとめるとこういうことです。
langgenius/difyがメインリポジトリ。セルフホストはGitHubクローン + Docker Composegit clone --branch $(最新タグ)でリリース版をクローン、docker compose up -dで起動- バージョンアップは
git pull+.env.exampleの変更確認が必須 - プラグインは
dify-official-pluginsリポジトリを確認 - ワークフロー活用には
Awesome-Dify-Workflowが使える - ライセンスはApache 2.0ベース(追加条件あり)。社内利用はOK
室谷最近は「最近はDifyをDify GUIで触ることはほとんどなくなった」と話しましたが、それでもセルフホスト版のGitHubリポジトリ自体の価値は全然下がってないんですよね。企業向けのRAGシステムを作るときは今でもDifyのセルフホスト版が第一選択肢です。
テキトー教師企業がMicrosoftのCopilot StudioとDifyを比較検討するケースも増えていますが、データのコントロールとカスタマイズ性ではセルフホスト版のDifyが強いですよね。
室谷セルフホストして使い倒すなら、まずはGitHubのリポジトリにスターをして、リリース通知を設定するところから始めてみてください。
