はじめに
この記事は Medley(メドレー) Advent Calendar 2025 19日目の記事です。
こんにちは。メドレーのコーポレートIT室でAI推進を担当しています@sishoです。
当社では、社内の生成AI活用基盤としてDifyをセルフホストで運用しています。
(※Difyの導入背景と詳細については、以前、弊社VPoEが Findy Tools に寄稿した記事をご覧ください。)
社員の約750名が利用するまでに成長しましたが、運用を進める中で「Difyだけでは対応が難しいユースケース」が増えてきました。
そこで、2025年10月、n8n Business Planの導入を決定し、本番運用を開始しました。
本記事では、以下の内容を紹介します。
- Difyのどこに限界を感じたか
- なぜn8n Business Planを選んだか
- どのようにインフラを構築したか(Terraform + Docker Compose)
こんな方に読んでほしい記事です:
- 社内でDifyやAI基盤を運用しており、自動化の次の一手を探している方
- n8nのセルフホストを検討しており、Community版とBusiness Planの違いを知りたい方
- AWSでn8nを構築する際のインフラ設計・Docker構成の参考が欲しい方
n8nとは
n8nは、ワークフロー自動化のためのオープンソースツールです。ZapierやMakeのようなノーコード/ローコードでワークフローを構築できるツールですが、セルフホストが可能な点が大きな特徴です。400以上のサービスとの連携ノードを標準で提供しており、開発者向けサービスとの連携に強みがあります。
導入の背景
n8nはもともと、当社の開発組織の一部で利用されていました。Difyの運用を進める中でその存在を知り、実際に触れてみると、Difyとは異なるアプローチで業務自動化の可能性を広げられると感じました。AIアプリケーション基盤としてのDifyに加え、AI-Nativeなワークフロー基盤としてn8nを全社で整備できないか。そう考え、導入検討を開始しました。
Difyだけでは足りなかったこと
Difyは全社で活用が進んでおり、AIアプリケーション開発の基盤として非常に有用です。しかし、運用を進める中でいくつかの壁にぶつかりました。
Difyとn8nの役割の違い
まず前提として、Difyとn8nは競合するツールではありません。DifyはAIアプリケーションを構築するのを得意とし、n8nはシステム連携とプロセスの自動化、いわゆるワークフローを構築することを得意としています。
| ツール | 得意領域 |
|---|---|
| Dify | AIアプリケーションの構築・管理(手軽にRAGやエージェントを構築可能) |
| n8n | システム間連携とプロセスの自動化(AWS、DB、Gitなど開発者向けサービスとの連携) |
Difyで対応が難しかったユースケース
具体的に、以下のようなケースでDifyの限界を感じました。
1. クレデンシャル管理の柔軟性
Difyでは、ワークスペース内で設定したモデルプロバイダーやツールのAPIキーは、そのワークスペースに所属する全員が共有して利用する形になります。
部署やプロジェクトごとにAPIキーを分けて管理したい場合、
複数ワークスペースの運用が必要ですが、これにはEnterprise版への切替やワークスペースごとにインスタンスを立てるといった対応が必要となる点が課題でした。
2. 開発者向けサービスとの連携
Difyにも公式・サードパーティ製のプラグインは存在しますが、より細かい設定が必要な場合に対応できないこともあり、HTTPリクエストノードで実装することが多くありました。
一方、n8nは400以上の公式ノードを提供しており、
AWS S3、Google BigQuery、PostgreSQL、GitHubなど開発者向けサービスが標準で利用可能な点が魅力でした。
3. Human-in-the-Loop(承認ワークフロー)
「AIが下書きを作成 → 人間が承認 → 送信」のような承認フローは、業務自動化においてよくあるパターンです。
n8nには「Wait for Approval」という機能があり、ワークフローを一時停止して人間の承認を待ち、承認後に再開できます。
Slack、メール、Telegramなどで承認ボタン付きメッセージを送信可能です。
一方、Difyには現時点でこの機能がありません(GitHub Issue #21455)。
Difyで同様のフローを実現するには、AWS Step FunctionsやLambdaを別途構築するか、
ワークフローを複数アプリに分割する必要があり、運用が複雑化します。
n8nで解決できること
n8nは400以上のサービスとの連携ノードを標準で提供しており、
上記のユースケースをノーコード/ローコードで実現できます。
開発者向けサービス(AWS、GitHub、PostgreSQL等)との連携に特に強みがあり、
エンジニアが連携機能を作るのに適したツールです。
なぜn8n Business Planを選んだか
まず、n8nをホスティングする場合、3つのプランの選択肢があります。
| プラン | 月額(年払い) | 主な特徴 |
|---|---|---|
| Community | 無料 | セルフホスト、基本機能のみ |
| Business | 667€(約12万円)〜 ※ | 共有プロジェクト6個まで、SSO/SAML、Git連携、権限管理 |
| Enterprise | 要問い合わせ | 無制限プロジェクト、外部シークレットストア、監査ログ、専用サポート |
※1€ = 180円で換算。料金は2025年10月時点です。最新の料金は公式サイトをご確認ください。
コミュニティ版の限界
運用の初期構想はCommunity版をホスティングして運用することを検討していました。しかしながら、全社展開を進める上で以下の致命的な制約があることがわかりました。
| 課題 | 具体的な制約 | 影響 |
|---|---|---|
| クレデンシャル共有不可 | OpenAIや社内ツールのAPIキーをチームで共有できない | ユーザーごとに設定が必要、AI活用が進まない |
| 権限管理なし | プロジェクト単位のアクセス制御ができない | 機密性の高いワークフローの管理が困難 |
| バージョン履歴が1日限定 | Git連携ができず、ワークフローの変更履歴保持も1日まで | 問題発生時の原因特定・切り戻しが困難 |
これらは全社展開の「致命的なブロッカー」でした。
Business Planで解決できること
Business Planは、Community版の課題がすべて解決でき、機能・セキュリティの両面で現時点のニーズには十分だったため、結論として、Business Planを選択しました。
| 機能 | Community版 | Business Plan |
|---|---|---|
| AIクレデンシャル共有 | × | ◎ |
| 権限管理 | × | ◎ |
| バージョン管理 | △(1日) | ◎(30日 + Git連携により永続) |
| SSO/SAML対応 | × | ◎ |
| S3外部ストレージ | × | ◎ |
インフラ構築
n8nをAWS上にセルフホストで構築しました。インフラはTerraformでコード管理しています。
ちなみに、セルフホストを始める際は、公式の Self-hosted AI Starter Kit も参考になります。
アーキテクチャ概要
AWSのマネージドサービスを活用した構成です。Business Planでは、S3を外部ストレージとして利用できるため、EC2のディスク容量を気にせずファイルを保存でき、バックアップや可用性の面でもメリットがあります。
| レイヤー | サービス | 役割 |
|---|---|---|
| ロードバランサー | ALB | HTTPS終端、アクセス制御 |
| コンピュート | EC2 | n8nアプリケーション実行(Docker Compose) |
| データベース | RDS PostgreSQL | ワークフロー・認証情報の永続化 |
| ストレージ | S3 | 外部ファイルストレージ(Business Plan機能) |
| メール | SES | SMTP経由でのメール通知 |
| 監視 | CloudWatch + Lambda | メトリクス収集、Slack通知 |
| 機密情報 | Secrets Manager | パスワード等の安全な保管 |
設計方針
- 既存VPCの再利用: Dify環境と同じVPCに配置し、相互連携を容易に
- プライベートサブネット: EC2とRDSは外部から直接アクセス不可
- Terraformで一元管理: インフラの変更履歴をGitで追跡可能
Docker Compose構成
EC2上ではDocker Composeでn8nを稼働させています。一部省略していますが、主要な設定は以下のとおりです。
環境変数の詳細は n8n公式ドキュメント - Environment variables を参照してください。
services:
n8n:
image: n8nio/n8n:1.121.3
container_name: n8n
restart: unless-stopped
network_mode: host
environment:
# ----- データベース設定 -----
- DB_TYPE=postgresdb
- DB_POSTGRESDB_HOST=n8n-db.xxxxxx.ap-northeast-1.rds.amazonaws.com
- DB_POSTGRESDB_PORT=5432
- DB_POSTGRESDB_DATABASE=n8n
- DB_POSTGRESDB_USER=n8n
- DB_POSTGRESDB_PASSWORD=your-secure-password
- DB_POSTGRESDB_SSL_ENABLED=true
# ----- 基本設定 -----
- N8N_HOST=n8n.example.com
- N8N_PROTOCOL=https
- WEBHOOK_URL=https://n8n.example.com
- N8N_PORT=5678
# ----- S3外部ストレージ(Business Plan機能) -----
- N8N_AVAILABLE_BINARY_DATA_MODES=s3,filesystem
- N8N_DEFAULT_BINARY_DATA_MODE=s3
- N8N_EXTERNAL_STORAGE_S3_HOST=s3.ap-northeast-1.amazonaws.com
- N8N_EXTERNAL_STORAGE_S3_BUCKET_NAME=your-company-n8n-storage
- N8N_EXTERNAL_STORAGE_S3_BUCKET_REGION=ap-northeast-1
- N8N_EXTERNAL_STORAGE_S3_AUTH_AUTO_DETECT=true
# ----- セキュリティ -----
- N8N_ENCRYPTION_KEY=your-encryption-key
- N8N_SECURE_COOKIE=true
- N8N_DIAGNOSTICS_ENABLED=false
- N8N_ENFORCE_SETTINGS_FILE_PERMISSIONS=true
# ----- メール通知(SMTP) -----
- N8N_EMAIL_MODE=smtp
- N8N_SMTP_HOST=email-smtp.ap-northeast-1.amazonaws.com
- N8N_SMTP_PORT=587
- N8N_SMTP_USER=your-smtp-user
- N8N_SMTP_PASS=your-smtp-password
- N8N_SMTP_SENDER=n8n@example.com
- N8N_SMTP_SSL=false
# ----- ヘルスチェック用 -----
- N8N_METRICS=true
volumes:
- n8n_data:/home/node/.n8n
healthcheck:
test: ["CMD-SHELL", "wget --spider -q http://localhost:5678/healthz || exit 1"]
interval: 30s
timeout: 10s
retries: 3
start_period: 60s
volumes:
n8n_data:
driver: local
今後の展望
n8nの導入はまだ始まったばかりです。本番環境が整った今、やるべきことは山積みです。
まず、運用面では、監視の強化とCI/CDの整備が急務です。安定運用に向けた基盤づくりを進めていきます。
そして、社内への浸透に向けては、n8nは「ノーコード/ローコード」を謳っていますが、実際にワークフローを一から作るにはDifyよりも技術的な理解が必要です。エンジニアだけでなく非エンジニアにも活用してもらうためには、すぐに使えるテンプレートの整備や、ハンズオン形式の勉強会といった裾野を広げていく活動が欠かせません。「自分でも作れそう」と思ってもらえる環境づくりを進めていきます。
おわりに
本記事では、Difyに加えてn8n Business Planを導入した背景から、インフラ構築、今後の展望までを紹介しました。
- Difyだけでは対応しづらかったユースケース
- Community版ではなくBusiness Planを選んだ理由
- AWS上でのセルフホスト構成
全社環境においては、Difyに加え、今回のn8nと、AI活用基盤の整備を着実に進めています。
Difyとn8nは同じVPC内に配置しているため、プライベートネットワーク経由で相互に通信できる環境が整っています。n8nの活用が広がれば、Difyとn8nのお互いの強みを組み合わせたワークフローも自然と生まれてくるはずです。
今後も、「AI for All」の方針のもと、社員一人ひとりがAIによる業務改善のアイデアを実装できる、そんな組織を目指していきます。
まだまだやりたいことは山積みです。この流れをさらに加速させる仲間を募集しています。
We're hiring!
メドレーでは、全社のAX推進やAI活用基盤の構築など、AI活用を推進するコーポレートエンジニアを募集中です!少しでもご興味をお持ちいただけましたらぜひ、ご応募お待ちしております!
※カジュアル面談も大歓迎です!ご希望の際は、「その他の項目(希望記入欄)」にてその旨をご記載ください。
Medley Advent Calendar 2025、明日は、@ogaclejapanさんの記事です!
メドレーでは生成AI利用のガイドラインが社内で展開されており、各部門の業務ではそのガイドラインに沿って利用をしています
