← ブログへ戻る

Dockerでn8nをインストールする方法(手動とワンクリック)

· MyPanel

n8n はオープンソースのワークフロー自動化プラットフォームで、Zapier/Make のセルフホスト代替です。最も一般的で安定した実行方法は Docker を使うことです。本記事ではゼロから Docker で n8n をインストールする方法(docker rundocker compose の両方)を解説し、さらに MyPanel で同じことをワンクリックで行う方法を紹介します。

なぜ Docker で n8n を動かすのか?

前提条件

方法1 —— docker run で手早く

データボリュームを作成し、n8n コンテナを起動します:

Terminal window
docker volume create n8n_data
docker run -d --name n8n \
-p 5678:5678 \
-v n8n_data:/home/node/.n8n \
docker.n8n.io/n8nio/n8n

http://サーバーIP:5678 を開いて最初のオーナーアカウントを作成します。データ(ワークフロー、認証情報)は n8n が /home/node/.n8n——つまり n8n_data ボリューム——に保存するため、更新しても失われません

方法2 —— docker compose を使う(推奨)

docker-compose.yml を作成します:

services:
n8n:
image: docker.n8n.io/n8nio/n8n
restart: always
ports:
- "5678:5678"
environment:
- N8N_HOST=n8n.example.com
- N8N_PROTOCOL=https
- N8N_PORT=5678
- WEBHOOK_URL=https://n8n.example.com/
- GENERIC_TIMEZONE=Asia/Ho_Chi_Minh
- TZ=Asia/Ho_Chi_Minh
volumes:
- n8n_data:/home/node/.n8n
volumes:
n8n_data:

起動:docker compose up -d。今後の更新:docker compose pull && docker compose up -d

重要: WEBHOOK_URL は実際の HTTPS URL でなければなりません。さもないと webhook トリガー(Telegram、GitHub…)が正しく動作しません。

難所:リバースプロキシ + SSL

上記のコンテナは 5678 ポートで暗号化なしに動くだけです。HTTPS 付きのドメインで使うには、127.0.0.1:5678 に向けたリバースプロキシ(nginx/Caddy/Traefik)を構築し、Let’s Encrypt SSL 証明書(certbot)を取得する必要があります。nginx では WebSocket の有効化も必須です(n8n はリアルタイム UI に WS を使用):

location / {
proxy_pass http://127.0.0.1:5678;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_set_header Host $host;
}

ここが最も時間がかかり、間違えやすい部分です:プロキシ設定、SSL 更新、正しいポート開放、WebSocket の維持。

Docker で n8n を自前導入する際のよくある失敗

もっと簡単な方法:MyPanel でワンクリック n8n

プロキシ、SSL、ボリュームを自分で管理したくないなら、MyPanelMarketplacen8n を用意しています——ワンクリック導入:

  1. Marketplace を開き、n8n を選び、インストールをクリック。
  2. ドメインを入力(サーバーに向けて設定済み)。
  3. インストールをクリック——MyPanel がイメージを取得し、隔離された Docker コンテナで実行し、リバースプロキシ + WebSocket を設定し、Let’s Encrypt SSL を自動発行します。

以降は任意のサイトと同様に n8n を管理できます:ログ、起動/停止、SSL、バックアップ。データは 永続ボリュームにあり、redeploy 後も残ります。Marketplace ガイドを参照。

手動 DockerMyPanel Marketplace
コンテナ起動コマンド入力ワンクリック
リバースプロキシ自分で設定自動
SSL自分で certbot自動発行+更新
WebSocket手動で追加標準搭載
バックアップ・ログ自力パネル内

まとめ

Docker で n8n を動かすと、強力なセルフホスト自動化エンジンが手に入ります。手動でも十分可能ですが、プロキシ + SSL + WebSocket の層で初心者はつまずきがちです。数分で n8n を HTTPS 上に動かしたいなら:

👉 一行のコマンドで無料の MyPanel をインストールし、Marketplace を開いて n8n をワンクリック導入——無料版で始めるのに十分です。

MyPanel — セルフホスト型コントロールパネル:あなたの Linux サーバーでウェブサイト、WordPress、データベース、SSL を管理。