n8nをVPSでセルフホストする方法
目次
n8nは、ワークフローを組んで作業を自動化するツールです。クラウド版もありますが、自分のVPSに立てるセルフホストにすると、常時稼働のワークフローを自分の管理下で動かせます。この記事は、n8n公式ドキュメントの記載を確認して、VPSに立てるまでの流れをまとめたものです。
先に知っておくこと
n8n公式は、セルフホストは経験者向けで、誤るとデータ損失・セキュリティ問題・停止につながるため、不慣れならn8n Cloudを推奨している。サーバーの管理に慣れていない場合は、クラウド版も選択肢に入れてください。
インストール方法の選び方
- n8n公式は、ほとんどのセルフホストでDockerの利用を推奨している。
- n8n公式によれば、Docker Composeは、データベースや追加サービスを含む本番デプロイ向け。VPSで常時稼働させるなら、基本はこれです。
- n8n公式によれば、ワンライン・セットアップの要件は、curlのあるLinuxまたはmacOS。
- npmでのインストールは、n8n 3.0から非推奨。npm版はNode.js 20.19以上24.x以下が必要。新しく立てるなら、選ばないほうがよい方法です。
Docker Composeで立てる流れ
設定ファイルの中身は、公式ページに載っているものをそのまま使ってください。ここでは書き写しません。
一:DockerとComposeを入れて確認する
docker --version
docker compose version
二:ドメインのDNSを設定する
n8n公式のDocker Compose手順によれば、オンラインで公開するには、サーバーを指す専用のサブドメインを作る。VPSのIPアドレスに向けたAレコードを作る形です。
三:環境ファイルと構成ファイルを用意する
ドメイン名などを書いた環境ファイルと、構成ファイル(compose)を作ります。n8n公式のCompose構成は、n8n本体とTraefik(TLS証明書とルーティング)の二つのコンテナ。
四:起動してアクセスする
n8n公式のCompose構成では、n8nはHTTPSでのみ到達できる(平文HTTPでは不可)。n8n公式によれば、つながらないときは、サーバーのファイアウォール設定とDNS設定を確認する。
データの保存先
- 既定ではSQLiteに認証情報・実行履歴・ワークフローを保存する。PostgreSQLも使える。
- n8n_dataボリュームを /home/node/.n8n にマウントして、再起動後もデータを残す。
- コンテナはホストのポート5678を公開する。
【編集部の見解】データはボリュームに残るため、VPSのバックアップの対象にボリュームを含めることを忘れないでください。
リバースプロキシの背後に置くとき
- n8n公式によれば、リバースプロキシの背後では、環境変数 N8N_WEBHOOK_URL でWebhook URLを手動設定する。
- n8n公式によれば、リバースプロキシの背後では、N8N_PROXY_HOPS を 1 にする。
ConoHa VPSのテンプレートを使う場合
- ConoHaのn8nテンプレートは、Caddyによって、HTTPS証明書の取得・更新を自動で行う。
- ConoHaのn8nテンプレートは、インストール後は停止状態で、管理者が起動して管理者アカウントを設定するまで外部からアクセスできない。
- ConoHaのn8nテンプレートで開放するポートは、80(HTTP・必須)、443(HTTPS・推奨)、22(SSH・任意)。
サービスの起動は次のコマンドです。
/root/n8n-start.sh
更新は次のとおりです。更新の前には、必ずデータのバックアップを取ってください。
cd /home/n8n-user/n8n/
sudo -u n8n-user docker compose pull n8n
/root/n8n-manage.sh restart
運用で気をつけること
- セキュリティ:n8n公式によれば、セルフホストのn8nは、セキュリティ監査・SSL・SSO・ノード制限・公開API制限・実行データのマスクなどの対策を取れる。
- メモリ:ワークフローの内容で大きく変わります。n8n用VPSに必要なスペックの考え方を参照してください。
- 入口の管理:常時稼働のセキュリティも確認してください。
確認した公式情報
この記事の数値・要件・コマンドは、次の公式ページの記載を確認してまとめています(取得日は、当サイトがそのページを取得した日です)。
- ConoHa公式ドキュメント:n8nスタートアップスクリプト(2026年10月01日 取得)
- n8n公式ドキュメント:Host n8n(2026年10月01日 取得)
- n8n公式ドキュメント:Configure webhook URLs with a reverse proxy(2026年10月01日 取得)
- n8n公式ドキュメント:Security(2026年10月01日 取得)
- n8n公式ドキュメント:Install with Docker(2026年10月01日 取得)
- n8n公式ドキュメント:Install with npm(2026年10月01日 取得)
- n8n公式ドキュメント:Use Docker Compose(2026年10月01日 取得)
この記事は、上記の公式情報を確認してまとめたものです。筆者が実際にサーバーを構築して動作を検証した内容ではありません。公式ドキュメントは更新されるため、作業の前に最新の記載をご確認ください。