Dockerでn8nをセルフホストする方法 — AIワークフロー自動化ガイド 2026

Dev.to / 2026/4/5

💬 オピニオンDeveloper Stack & InfrastructureSignals & Early TrendsTools & Practical Usage

要点

  • この記事は、Docker Composeを使ってn8nをセルフホストする2026年版ガイドを提供し、PostgreSQLによる永続ストレージで動作するインスタンスのセットアップ方法を解説します。
  • n8nを「AIファースト」のワークフロー自動化プラットフォームとして位置づけ、LLM呼び出しの連結、ベクターデータベースへのクエリ、ツールを使うエージェントを、オーケストレーションコードを書かずにビジュアルなノードエディタで実現できる点を強調しています。
  • チュートリアルでは、ローカルでのLLM推論にOllamaを使用する実用的なAIワークフローの構築を案内し、最初のデプロイから構造化された出力の生成までの手順を扱います。
  • n8n Cloud Pro(30,000回の実行で€60/月)との費用比較を取り上げ、低コストなVPSで構築するセルフホスト構成なら、実行回数は無制限にできることを示します。
  • このガイドは、結果として得られるシステムを「本番対応(production-ready)」として提示し、ZapierやMakeのような有料の自動化サービスへの依存を、AIヘビーなワークフローでは減らすことを目的としています。

もともと Effloow に掲載

Dockerでn8nをセルフホストする方法 — AIワークフロー自動化ガイド 2026

n8n CloudのProプランは、30,000回の実行で月額€60です。$5のVPSでセルフホストしたn8nインスタンスなら、実行回数は無制限。ソフトウェアも同じ、機能も同じで、コスト差は12倍。

n8nは、1,400以上の連携(インテグレーション)と視覚的なノードエディタを備えたオープンソースのワークフロー自動化プラットフォームです。Zapierの代替として始まりましたが、2026年にはもっと面白いものへ進化しています。つまり、オーケストレーションコードを書かずに、LLM呼び出し、ベクターデータベースへのクエリ、ツールを使うエージェントを連結していける「視覚的なAIワークフローエンジン」です。

このガイドでは、Docker Composeでn8nをセルフホストする手順を、初期セットアップから、ローカルでのLLM推論にOllamaを使った動作するAIワークフローの作成まで案内します。あなた自身のインフラ上で、Web検索、ドキュメント処理、構造化出力の生成を行う実用的なAIエージェントを構築します。

最後には、PostgreSQLによる永続化を備えた本番対応のn8nインスタンス、プライベートなAI推論のためのOllama連携、そしてZapierやMakeであれば数百ドル規模のコストになるようなAIワークフローを作るための知識が手に入ります。

n8nとは?

n8n(「nodemation」と発音)は、オープンソースで、ソースコードが利用可能なワークフロー自動化プラットフォームです。視覚的なキャンバス上でノードをつなぎ合わせて自動化を構築できます。トリガー、データ変換、API呼び出し、AIモデルの呼び出しなどを定義し、n8nはスケジュールまたはイベントに応じてそれらを実行します。

機能 詳細
GitHubスター数 70,000+(2026年4月時点)
現在のバージョン 2.14.2
ライセンス サステナブル利用ライセンス(ソースコード提供型)
連携(インテグレーション) 1,400+ の内蔵ノード
AI機能 LLMチェーン、AIエージェント、ベクターストア、埋め込み(embeddings)
デプロイ Docker(セルフホスト)、n8n Cloud、またはnpm

2026年におけるn8nが際立つ理由

多くの自動化プラットフォームではAIが「後付け機能」として扱われます。つまり、7,000もの他の連携の中に埋もれた「GPTを呼び出す」1アクションのようにです。n8nではAIを、第一級のワークフロー構成要素として扱います。

このプラットフォームには、専用ノードが用意されています:

  • LLMチェーン — 任意のモデル(OpenAI、Anthropic、Google、Ollama)を、構造化されたプロンプトと出力パースと結び付ける
  • AIエージェント — ツール利用、メモリ、多段階の推論を備えた自律エージェント
  • ベクターストア — RAGワークフロー向けにQdrant、Pinecone、Supabaseなど
  • 埋め込み(Embeddings) — 複数のプロバイダから埋め込みを生成し、クエリする
  • ドキュメントローダー — PDF、Webページ、データベースをAIパイプラインに取り込む

AI特化のワークフローにDifyを使っているなら、n8nはより広い自動化レイヤーだと考えてください。DifyはRAGチャットボットやプロンプトエンジニアリングに強みがあります。n8nは、AIをあらゆるものに接続する点で優れています。つまり、あなたのCRM、メール、データベース、API、ファイルシステムなどにです。

n8nの実行モデル

これはコスト優位性を理解するうえで重要です。Zapierは「タスク」ごとに課金します。ワークフロー内の個々のアクションはすべて1タスクとして数えられます。5ステップのワークフローを1,000回トリガーすると、5,000タスクを消費します。Make.comは「操作(operation)」ごとに課金します。こちらも同程度の粒度です。

n8nは「実行(execution)」ごとにカウントします。1実行=1つのワークフロー実行完了を意味し、含まれるノード数に関わりません。20ノードのワークフローでWebhookイベントを1,000件処理しても、実行回数は20,000ではなく1,000です。

セルフホストしたn8nでは、実行回数の上限はそもそもありません。支払うのはサーバー代だけです。それだけです。

なぜn8nをセルフホストするのか? コストの内訳

n8nをセルフホストする場合のコスト計算はシンプルで、インパクトも大きいです。

n8n Cloudの料金(2026年4月時点)

プラン 料金 月間実行回数 アクティブなワークフロー
Starter €24/月 2,500 15
Pro €60/月 10,000+ 50
Enterprise カスタム カスタム 無制限

出典:n8n.io/pricing — 購入前に最新の料金を必ず確認してください。

セルフホストのコスト

構成要素 月額コスト
VPS(Hetzner CX22、2 vCPU、4GB RAM) €4.35/月
ドメイン名(償却後) 約$1/月
SSL証明書(Let’s Encrypt) 無料
合計 約$5.50/月

つまり、コーヒー1杯分の値段で、無制限の実行回数、無制限のアクティブなワークフロー、そして完全なデータ主権を得られます。

どんなときn8n Cloudのほうが理にかなうか

セルフホストが常に最適とは限りません。次の場合は、n8n Cloudのプレミアムに価値があります:

  • LDAP/OIDCを自分で設定せずにマルチユーザーのアクセス制御が必要
  • メンテナンスがゼロ — Dockerの更新も、管理するバックアップも不要
  • チームに、基本的なサーバー管理に慣れた人がいない
  • エンタープライズSSOと監査ログが、最初からすぐに使える状態で必要

個人開発者、小規模チーム、そしてすでに自分でインフラを管理している人にとっては、セルフホストは当然の選択です。もしあなたがそうなら、月$20未満で開発スタック全体をセルフホストするためのガイドが、より広いインフラ文脈をカバーしています。

他のプラットフォームとの比較

これについてはZapier vs Make vs n8nの比較で詳しく取り上げましたが、ここでは要約です:

シナリオ Zapier Make.com n8n Cloud n8nセルフホスト
1日1,000回の実行、各5ステップ $300+/月 約$19/月 €60/月 約$5/月
AIワークフロー(LLM + ツール) $50+/月の追加 $9+/月の追加 含まれる 含まれる
データがサーバーに留まる No No No Yes
カスタムコードノード 制限あり Yes Yes Yes
セルフホスト可能 No No N/A Yes

前提条件

開始する前に、次のものが必要です:

  • サーバーまたはローカルマシン:少なくともCPUコア数2、RAM 2GB(AIワークロードでは4GB推奨)
  • Docker Engine 24+Docker Compose v2 のインストール
  • ドメイン名(SSLありの本番利用では必要 — ローカル開発では任意)
  • ターミナルの基本操作に抵抗がないこと

推奨サーバー

専用のセルフホストn8nインスタンスなら、次を推奨します:

  • ローカル開発: Docker がインストールされている任意のマシン(Mac、Linux、または WSL2 付き Windows)
  • 本番 VPS: Hetzner Cloud CX22(2 vCPU、4GB RAM、€4.35/月)— Hetzner Cloud 設定ガイドをご覧ください
  • ローカル LLM での AI ワークロード: Hetzner CAX21 ARM サーバー(4 vCPU、8GB RAM、€7.49/月)または GPU 搭載マシン

ローカルで AI 推論を行うために、Ollama を n8n と並行して動かす予定なら、少なくとも 8GB の RAM を見込んでください。Llama 3.2(3B)のような小型モデルは 8GB で問題なく動作します。Llama 3.1(70B)のような大型モデルは GPU サーバーが必要です。モデルのサイズ選定の詳細は、Ollama セルフホストガイドを参照してください。

方法 1: n8n セルフホスト AI スターターキット(推奨)

n8n は公式の Self-Hosted AI Starter Kit を維持しており、n8n に PostgreSQL、Ollama、Qdrant(ベクタデータベース)をバンドルしています。これは、動作する AI ワークフロー環境を最速で構築するための最短ルートです。

ステップ 1: リポジトリをクローンする

git clone https://github.com/n8n-io/self-hosted-ai-starter-kit.git
cd self-hosted-ai-starter-kit

ステップ 2: 環境変数を設定する

cp .env.example .env

.env ファイルを安全な値で編集してください:

# .env — これらの値を変更する
POSTGRES_USER=n8n_user
POSTGRES_PASSWORD=your-secure-password-here
POSTGRES_DB=n8n

N8N_ENCRYPTION_KEY=generate-a-random-32-char-string
N8N_USER_MANAGEMENT_JWT_SECRET=generate-another-random-string
N8N_DEFAULT_BINARY_DATA_MODE=filesystem

# Mac/Apple Silicon でローカルに Ollama を動かす場合はコメント解除
# OLLAMA_HOST=host.docker.internal:11434

暗号化キー用の安全なランダム文字列を生成します:

openssl rand -hex 32  # 2 回実行 — 各キーにつき 1 回

重要: N8N_ENCRYPTION_KEY は保存された認証情報を暗号化します。これを失うと、保存済みのすべての認証情報が読み取れなくなります。安全な場所にバックアップしてください。

ステップ 3: スタックを起動する

ハードウェアに合ったコマンドを選択してください:

# NVIDIA GPU(AI ワークロードに推奨)
docker compose --profile gpu-nvidia up -d

# AMD GPU(Linux のみ)
docker compose --profile gpu-amd up -d

# CPU のみ(どこでも動作、ただし AI 推論は遅い)
docker compose --profile cpu up -d

# Mac / Apple Silicon(ホストの Ollama を使用 — Ollama は別途インストール)
docker compose up -d

最初の実行では、いくつかの Docker イメージを取り込み、Llama 3.2 モデル(約 2GB)をダウンロードします。接続速度によって、完了まで数分かかります。

ステップ 4: n8n にアクセスする

ブラウザを開き、次に移動します:

http://localhost:5678

n8n のセットアップ画面が表示されます。管理者アカウントを作成してください。これは、このインスタンスのオーナーアカウントです。強力なパスワードを選んでください。

スターターキットに含まれるもの

Docker Compose のスタックでは 5 つのサービスが実行されます:

サービス イメージ 目的 ポート
n8n n8nio/n8n:latest ワークフロー自動化エンジン 5678
PostgreSQL postgres:16-alpine 永続データ保存 5432(内部)
Ollama ollama/ollama:latest ローカル LLM 推論 11434
Qdrant qdrant/qdrant RAG 用のベクタデータベース 6333
n8n-import n8nio/n8n:latest 1 回限りのデモデータ取り込み

スターターキットには、セットアップ後に http://localhost:5678/workflow/srOnR8PAY3u4RSwb でアクセスできるデモ AI ワークフローも含まれています。これは、Ollama を使った AI チャットボットのチェーンをデモンストレーションするもので、n8n の AI 機能を理解するための良い出発点になります。

方法 2: 最小構成の n8n 設定(AI スタックなし)

AI コンポーネントを使わずに、ワークフロー自動化だけが必要なら、n8n と PostgreSQL だけのシンプルな構成の方がリソースの消費が少なくなります。

最小 n8n 向けの Docker Compose

docker-compose.yml ファイルを作成します:

volumes:
  n8n_storage:
  postgres_storage:

services:
  postgres:
    image: postgres:16-alpine
    restart: unless-stopped
    environment:
      POSTGRES_USER: ${POSTGRES_USER}
      POSTGRES_PASSWORD: ${POSTGRES_PASSWORD}
      POSTGRES_DB: ${POSTGRES_DB}
    volumes:
      - postgres_storage:/var/lib/postgresql/data
    healthcheck:
      test: ['CMD-SHELL', 'pg_isready -h localhost -U ${POSTGRES_USER} -d ${POSTGRES_DB}']
      interval: 5s
      timeout: 5s
      retries: 10
n8n:
    image: n8nio/n8n:2.14.2
    restart: unless-stopped
    ports:
      - "5678:5678"
    environment:
      - DB_TYPE=postgresdb
      - DB_POSTGRESDB_HOST=postgres
      - DB_POSTGRESDB_USER=${POSTGRES_USER}
      - DB_POSTGRESDB_PASSWORD=${POSTGRES_PASSWORD}
      - DB_POSTGRESDB_DATABASE=${POSTGRES_DB}
      - N8N_ENCRYPTION_KEY=${N8N_ENCRYPTION_KEY}
      - N8N_USER_MANAGEMENT_JWT_SECRET=${N8N_USER_MANAGEMENT_JWT_SECRET}
      - N8N_DIAGNOSTICS_ENABLED=false
    volumes:
      - n8n_storage:/home/node/.n8n
    depends_on:
      postgres:
        condition: service_healthy

.env ファイルを作成します:

POSTGRES_USER=n8n_user
POSTGRES_PASSWORD=your-secure-password
POSTGRES_DB=n8n

N8N_ENCRYPTION_KEY=your-random-encryption-key
N8N_USER_MANAGEMENT_JWT_SECRET=your-random-jwt-secret

起動します:

docker compose up -d

この最小構成では、約 512MB の RAM を使用します。最小クラスの VPS インスタンスでも適しています。

最初の AI ワークフローを構築する

n8n が動作しているので、実用的な AI ワークフローを作っていきましょう。ここではAI によるコンテンツ要約を作成します。これは以下を行います:

  1. Webhook 経由で URL を受け取る
  2. Web ページのコンテンツを取得する
  3. 要約のために LLM に送信する
  4. 要約を構造化された JSON レスポンスとして返す

手順 1:新しいワークフローを作成する

n8n エディタ(http://localhost:5678)で、右上の 「Add Workflow」 をクリックします。名前を「AI Content Summarizer」にしてください。

手順 2:Webhook トリガーを追加する

  1. ノードを追加するために + ボタンをクリックします
  2. 「Webhook」 を検索して選択します
  3. HTTP メソッドを POST に設定します。
  4. パスを summarize に設定します。
  5. 「Respond」で「Using 'Respond to Webhook' Node」 を選択します。— これにより、AI が生成した要約を返せます。

手順 3:HTTP Request ノードを追加する

  1. Webhook の後に新しいノードを追加します
  2. 「HTTP Request」 を検索します。
  3. URL を次に設定します: {{ $json.body.url }} — これにより、受信した webhook ペイロードから URL を読み取ります
  4. メソッドを GET に設定します
  5. 「Options」でレスポンス形式を 「String」 に設定します — 生の HTML を取得したいからです。

手順 4:AI チェーンを追加する

  1. 「Basic LLM Chain」 ノードを追加します
  2. それを HTTP Request の出力に接続します
  3. モデルを設定します:
    • Ollama を使用する場合(スターターキットから):Ollama Chat Model を選択し、llama3.2 を選びます
    • API を使用する場合:OpenAI Chat Model または Anthropic Chat Model を選択し、API 認証情報を追加します
  4. プロンプトを設定します:
次の Web ページのコンテンツを 3〜5 個の箇条書きで要約してください。重要な事実と実行可能な情報に焦点を当ててください。次の形式で JSON として要約を返します:{"title": "...", "bullets": ["...", "..."], "word_count": N}

内容:
{{ $json.data }}

手順 5:Respond to Webhook ノードを追加する

  1. 最後に 「Respond to Webhook」 ノードを追加します
  2. 「Respond With」を 「All Incoming Items」 に設定します

手順 6:動作確認する

ワークフローを有効化してから、呼び出します:

curl -X POST http://localhost:5678/webhook/summarize \
  -H "Content-Type: application/json" \
  -d '{"url": "https://example.com"}'

AI によって生成された要約を含む JSON レスポンスが返ってくるはずです。

この基本的なパターン — トリガー → データ取得 → AI 処理 → 構造化出力 — は、ほとんどの AI 自動化ワークフローの土台です。ここから、エラーハンドリング、条件分岐、データベースへの保存、通知ステップなどを追加できます。

発展:ツール利用による AI エージェントワークフロー

n8n の AI Agent ノードは、単純な LLM チェーンを超えています。これは、推論し、ツールを使い、複数ステップのアクションを実行できる自律的なエージェントを作成します。これは、コードで LangGraphCrewAI を使って構築するのと似ていますが、こちらは視覚的に設定できます。

n8n で AI エージェントができること

n8n の AI Agent ノードは次を組み合わせます:

  • LLM(サポートされている任意のモデル)による推論
  • エージェントが呼び出せるツール:HTTP リクエスト、コード実行、データベースクエリ、Web 検索
  • メモリ(複数ターンの会話用)
  • 出力パーサ(構造化されたレスポンス用)

リサーチエージェントを作る

AI リサーチエージェントのためのワークフローパターン例です:

  1. Webhook トリガー — リサーチ質問を受け取る
  2. AI Agent ノード を次のように設定:
    • モデル: Ollama(llama3.2)または API 経由の Claude/GPT-4
    • ツール:
      • SerpAPI または Google Search ノード — Web リサーチ用
      • HTTP Request ツール — 特定のページを取得するため
      • Code ツール — データ処理と計算のため
    • システムプロンプト:「あなたはリサーチアシスタントです。質問に徹底的に答えるために Web を検索してください。参照した情報源は URL 付きで引用してください。」
  3. Respond to Webhook — エージェントのリサーチレポートを返す

このエージェントは、質問や途中で得られた結果に基づいて、どのツールを、どの順番で、何回使うかを自律的に判断します。

エージェントのツール設定

AI Agent ノードにツールを追加するには:

  1. AI Agent ノードをクリックします
  2. 「Tools」の下で 「Add Tool」 をクリックします
  3. 利用可能なツールノード(Calculator、Code、HTTP Request、SerpAPI など)から選択します
返却形式: {"translated": "翻訳されたHTML"}
  • 各ツールには、LLM がそれをいつ呼び出すべきかを判断するために使用する名前と説明があります
  • 重要な洞察は、ツールの説明がシステムプロンプトと同じくらい重要だということです。エージェントが各ツールの適切な場面を理解できるように、明確で具体的な説明を書いてください。

    複数ターン会話のためのメモリ

    チャットボット形式のワークフローでは、AIエージェントに Window Buffer Memory または Postgres Chat Memory のサブノードを追加します。これにより、エージェントは複数のやり取りにわたって会話の文脈を保持できます。

    すでにスタックに PostgreSQL があるなら、Postgres Chat Memory が自然な選択です。n8n の再起動の間もセッションは維持され、データベースに会話履歴がすべて保存されます。

    n8n vs Zapier vs Make:何を選ぶべきかの目安

    私たちは 4つのプラットフォームすべての詳細な比較 を書きました。以下に判断の枠組みを示します:

    次の場合は Zapier を選びましょう:

    • 最大規模の連携ライブラリ(7,000+ のアプリ)が必要
    • チームが非技術者で、最もシンプルなインターフェースを求めている
    • 予算が主な制約ではない
    • エンタープライズ向けのコンプライアンス認証が必要

    次の場合は Make.com を選びましょう:

    • スケールしたときの複雑なマルチブランチ・ワークフローが必要
    • マネージド環境で最も優れた価格対運用効率を得たい
    • ワークフローで大量のデータ変換が発生する
    • インフラの管理をしたくない

    次の場合は n8n(セルフホスト)を選びましょう:

    • AI ワークフロー自動化を第一級の機能として使いたい
    • 固定のサーバーコストで無制限の実行が必要
    • データ主権が重要 — GDPR、クライアントとの契約、またはプライバシー要件
    • Docker と基本的なサーバー管理に抵抗がない
    • API コストなしで Ollama によりローカルの LLM を動かしたい

    次の場合は n8n Cloud を選びましょう:

    • インフラを管理せずに n8n の機能を利用したい
    • マネージドのスケーリングと高可用性が必要
    • 実行ボリュームがティアの料金設定の範囲内に収まる

    本番環境へのデプロイのヒント

    n8n をローカルで動かすのは一つのことです。信頼性のある本番運用には、もう少し手順が必要です。

    Caddy によるリバースプロキシ

    本番デプロイでは、n8n を自動 SSL 対応のリバースプロキシの背後に配置してください。Caddy が最も簡単な選択肢です。

    docker-compose.yml に Caddy を追加します:

      caddy:
        image: caddy:2-alpine
        restart: unless-stopped
        ports:
          - "80:80"
          - "443:443"
        volumes:
          - ./Caddyfile:/etc/caddy/Caddyfile
          - caddy_data:/data
    

    Caddyfile を作成します:

    n8n.yourdomain.com {
        reverse_proxy n8n:5678
    }
    

    Webhook の URL が正しく解決されるように、n8n 環境変数に WEBHOOK_URL=https://n8n.yourdomain.com を追加します。

    バックアップ

    n8n のデータは次の2か所に保存されます:

    1. PostgreSQL データベース — ワークフロー定義、資格情報(暗号化)、実行ログ
    2. n8n_storage ボリューム — バイナリデータ、暗号化キー

    毎日バックアップを自動化します:

    #!/bin/bash
    # backup-n8n.sh
    BACKUP_DIR="/backups/n8n/$(date +%Y-%m-%d)"
    mkdir -p "$BACKUP_DIR"
    
    # データベースのバックアップ
    docker compose exec -T postgres pg_dump -U n8n_user n8n > "$BACKUP_DIR/n8n-db.sql"
    
    # ボリュームのバックアップ
    docker run --rm -v n8n_storage:/data -v "$BACKUP_DIR":/backup alpine \
      tar czf /backup/n8n-storage.tar.gz -C /data .
    
    echo "Backup completed: $BACKUP_DIR"
    

    cron で毎日実行します:

    0 3 * * * /path/to/backup-n8n.sh
    

    n8n の更新

    docker-compose.yml で n8n のバージョンを固定します(例:latest の代わりに n8nio/n8n:2.14.2)。そして意図を持って更新してください:

    # 1. まずバックアップ
    ./backup-n8n.sh
    
    # 2. docker-compose.yml のイメージタグを更新
    
    # 3. 取得して再起動
    docker compose pull n8n
    docker compose up -d n8n
    

    更新の前に n8n のリリースノート を確認してください。メジャーバージョンの更新では、ワークフローノードにブレークする変更が含まれる場合があります。

    資格情報の暗号化

    n8n は保存された資格情報を N8N_ENCRYPTION_KEY 環境変数を使って暗号化します。このキーを紛失したり変更したりすると、保存済みのすべての資格情報が読めなくなります。

    ベストプラクティス:

    • 強力なキーを生成する:openssl rand -hex 32
    • サーバーの外に保存する(パスワードマネージャー、暗号化したバックアップ)
    • バージョン管理に .env ファイルを絶対にコミットしない
    • 資格情報を作成する前にキーを設定する — 後から変更すると、すべての資格情報を再入力する必要があります

    リソース監視

    一般的なセルフホスト型 n8n インスタンスの場合:

    指標 アイドル 負荷時(同時ワークフロー50件)
    CPU <5% 30-60%(2コア)
    RAM(n8n のみ) 約200MB 約500MB
    RAM(AI スタック一式) 約2GB 約4GB+
    ディスク I/O 最小 中程度(実行ログ)

    Ollama で AI ワークロードを動かす場合、LLM 推論がボトルネックになります。Ollama のメモリ使用量は別途監視してください。3B パラメータのモデルは約2GB の RAM を使用し、7B のモデルは 4〜5GB 必要です。

    実践的な AI 自動化の例 5つ

    返却形式: {"translated": "翻訳されたHTML"}

    ここでは、自社ホスト型AIスタックで今日すぐ構築できる n8n ワークフローを5つ紹介します。

    1. メール担当トリアージエージェント

    • トリガー: 新しいメールが届く(IMAP または Gmail ノード)
    • AI エージェント: メールを緊急/通常/スパムに分類し、アクションアイテムを抽出
    • アクション: メールにラベルを付け、プロジェクト管理ツールでタスクを作成し、緊急アイテムには Slack にアラートを送信
    • モデル: Ollama 経由の Llama 3.2(3B)— 分類タスクなら十分に高速

    2. RSS-to-summary パイプライン

    • トリガー: RSS フィードのトリガー(1時間ごとにチェック)
    • AI チェーン: 新しい記事を3つの箇条書きで要約
    • 出力: Slack チャンネルまたは Discord サーバーに要約を投稿
    • モデル: 任意の LLM — これは単純な要約タスクです

    3. カスタマーサポート自動返信

    • トリガー: サポートシステムからの Webhook
    • ツール付き AI エージェント: ナレッジベース(Qdrant ベクターストア)を検索し、返信文を下書き
    • 人によるレビュー: 送信前に下書きを Slack に送って承認を得る
    • モデル: 品質が重要な返信のため、API経由の Claude または GPT-4

    4. ドキュメントプロセッサ

    • トリガー: 監視フォルダまたは S3 バケットにファイルをアップロード
    • 処理: PDF からテキストを抽出し、チャンクに分割して埋め込み(embeddings)を生成
    • 保存: 後で RAG クエリを実行するため、埋め込みを Qdrant に保存
    • モデル: 埋め込みには Ollama、以降のクエリには任意の LLM

    5. 競合監視ダッシュボード

    • トリガー: スケジュール(毎日)
    • Webスクレイピング: HTTP Request ノードで競合ページを取得
    • AI 分析: 変更点を比較し、新機能や価格更新を特定
    • 出力: 構造化された比較データを含む毎日のダイジェストメールを生成
    • モデル: コスト無料の毎日実行のため、Ollama 経由の Llama 3.2

    これらはいずれも、同じ $5/月のサーバー上で動作します。Zapier では、メール担当トリアージエージェントだけでも、複数ステップのワークフローに対するタスク課金のため $50+/月かかります。

    Ollama 経由でローカル LLM に n8n を接続する

    AI Starter Kit を使っている場合、Ollama はすでに起動しています。ここでは、n8n をそれに使うように設定する方法を説明します。

    Ollama をクレデンシャルとして追加する

    1. 任意の AI ノードで、Model パラメータをクリックします
    2. "Ollama Chat Model" または "Ollama" を選択します
    3. 新しいクレデンシャルを作成します:
      • Base URL: http://ollama:11434(Docker ネットワーク内)または http://localhost:11434(Ollama がホスト上で動作している場合)
    4. モデルを選択します(例:llama3.2

    追加モデルを取り込む

    Ollama インスタンスにさらにモデルをダウンロードするには:

    docker compose exec ollama ollama pull mistral
    docker compose exec ollama ollama pull codellama
    docker compose exec ollama ollama pull nomic-embed-text  # For embeddings
    

    Ollama のモデル選定、必要なハードウェア、最適化に関する完全なガイドは、Ollama + Open WebUI のセルフホスティングガイドをご覧ください。

    ローカル LLM を使うべきケースと API モデルを使うべきケース

    ユースケース 推奨モデル 理由
    分類、タグ付け Ollama 経由の Llama 3.2(3B) 高速で無料、構造化タスクなら十分
    要約 Ollama 経由の Llama 3.2(3B)または Mistral 社内の要約として十分な品質
    顧客向けのコンテンツ API 経由の Claude または GPT-4 出力が顧客に見えるなら高品質が重要
    コード生成 Ollama 経由の CodeLlama または API 経由の Claude 複雑さや品質要件によって変わる
    埋め込み(embeddings) Ollama 経由の nomic-embed-text 無料で高速、ローカルで実行できる— API の埋め込みにお金を払う理由はありません

    ハイブリッドアプローチがうまく機能します。大量の社内タスクにはローカルの Ollama モデルを使い、顧客向けまたは品質が重要な出力には API モデルを使います。

    よくある質問(FAQ)

    n8n は本当にセルフホストなら無料ですか?

    n8n Community Edition は Sustainable Use License の下であれば、セルフホストで無料です。自分のプロジェクトやビジネスの自動化に利用できます。このライセンスでは、ホスティングサービスとして n8n を再販することが制限されています。ほとんどのセルフホスト用途では、実質的に無料です。

    セルフホストした n8n は何件のワークフローを扱えますか?

    ワークフローや実行に人為的な上限はありません。実際の制限はサーバーの CPU と RAM です。コア2つ・RAM 4GB の VPS なら、控えめなトラフィックで 50+ のアクティブなワークフローを問題なく扱えます。大量のケース(1分あたり数千の実行)がある場合は、縦にスケールするか、キューモードで複数ワーカーを使って n8n を運用してください。

    OpenAI と Anthropic の API で n8n を使えますか?

    はい。n8n には OpenAI、Anthropic、Google AI、Hugging Face など、多くのネイティブなクレデンシャルタイプがあります。クレデンシャル設定で API キーを追加し、任意の AI ノードで対応するモデルを選択してください。同じワークフロー内で提供元(プロバイダ)を混在させることもできます。

    データを失わずに n8n をアップデートするにはどうすればいいですか?

    バージョンを固定し、データベースとボリュームをバックアップし、docker-compose.yml のイメージタグを更新してから、docker compose pull && docker compose up -d を実行してください。ワークフロー、クレデンシャル、実行履歴は PostgreSQL に保存されるため、コンテナの更新後も保持されます。

    セルフホストした n8n は本番運用に十分なセキュリティですか?

    n8n は保存されるクレデンシャルを暗号化し、LDAP/OIDC/SAML 認証に対応し、ロールベースのアクセス制御を提供します。本番環境では、SSL(Caddy または Nginx)付きのリバースプロキシを追加し、インスタンスを常に最新に保ち、ネットワークアクセスをポート 443 に制限し、強力な暗号化キーを使用してください。セルフホスト版ではクラウドプラットフォームよりもセキュリティの制御範囲が大きくなります。なぜなら、ネットワークの境界をあなたが所有しているからです。

    小規模チームなら n8n は Zapier の代わりになりますか?

    ほとんどのユースケースでは、はい。n8n は同じ統合パターン—トリガー、API 呼び出し、データ変換、スケジューリング—を 1,400+ のビルトインノードでカバーします。主なギャップは Zapier のより大きなアプリライブラリ(7,000+ アプリ)です。必要としている特定の連携が n8n に存在する場合(n8n の統合ページを確認してください)、切り替えることで大きなコスト削減が可能です。

    AI ワークフローにおいて n8n は Dify とどう比較できますか?

    両者は別の目的のために作られています。Dify は AI 専用に設計されています。RAG チャットボット、プロンプトエンジニアリング、モデル管理です。n8n は、強力な AI 機能を追加した汎用の自動化プラットフォームです。ワークフロー全体が AI(チャットインターフェース、ドキュメントのQ&A)である場合は Dify を使いましょう。外部サービス、データベース、API と接続するより広い自動化の一部として AI が必要な場合は n8n を使ってください。

    n8n を運用して学んだこと

    Effloow では、コンテンツ制作、SEO 分析、サイト管理のために 14 個の AI agent を運用しています。n8n がワークフローの自動化レイヤーを担当しており、agent を外部サービスに接続したり、定期実行タスクをスケジュールしたり、さまざまなプラットフォームからの webhook を処理したりします。

    学びはすべて苦労の末に得ました。以下の3つです。

    1. n8n のバージョンを固定してください。 最初は :latest を使っていましたが、自動アップデートによって本番環境の webhook ワークフローが壊れました。テストした後に手動で更新し、特定のバージョンに固定してください。

    2. 実行ログのプルーニング(削除)を設定してください。 デフォルトでは n8n はすべての実行データを保存します。アクティブなワークフローを1か月運用したところ、PostgreSQL のデータベースが 8GB まで膨らみました。古い実行データを自動でプルーニングするために、EXECUTIONS_DATA_PRUNE=trueEXECUTIONS_DATA_MAX_AGE=168(時間)を設定してください。

    3. AI Starter Kit が最適な出発点です。 最初は n8n だけをセットアップし、Ollama は後から追加しました。スターターキットの Docker Compose 設定は、最初からネットワーク、ボリュームマウント、サービス依存関係を正しく扱います。デバッグの手間を省けます。

    はじめの一歩:最初の 30 分

    こちらは、セルフホストした n8n を最初に触るための具体的なプランです:

    1. 分 0-10: AI Starter Kit をクローンし、.env を設定したうえで docker compose --profile cpu up -d
    2. 分 10-15: http://localhost:5678 を開き、管理者アカウントを作成し、デモのワークフローを確認する
    3. 分 15-25: 上のチュートリアルを元に AI Content Summarizer のワークフローを作成する
    4. 分 25-30: webhook をテストし、プロンプトを反復改善し、Ollama と API モデルの切り替えを試す

    その後、n8n の ワークフローテンプレートライブラリ を探索してください。数百ものコミュニティ制作のワークフローがあり、インポートしてカスタマイズできます。

    セルフホストで n8n を使うことは、AI で開発しているあらゆる開発者や小規模チームにとって、投資対効果(ROI)の高い施策のひとつです。無制限の自動化、ローカルでの LLM 推論、そしてデータを完全に制御できる — そのすべてを、少額の VPS コストで実現できます。

    n8n は n8n GmbH によって保守されているオープンソースソフトウェアです。このガイドは、セルフホストの Community Edition について扱います。サポート付きのマネージドホスティングについては n8n Cloud(アフィリエイトリンク。追加コストなしで当社がコミッションを得ます)をご覧ください。

    この記事には、当社がおすすめする製品またはサービスへのアフィリエイトリンクが含まれている場合があります。これらのリンクから購入いただいた場合、当社は追加の費用なしで少額のコミッションを得ることがあります。これは Effloow の活動を支援し、無料で高品質なコンテンツを作り続けるために役立ちます。詳細は当社の アフィリエイトに関する開示 をご確認ください。