はじめに
n8nは、さまざまなアプリを接続し、広範なコードを書くことなくタスクを自動化できる強力なオープンソースのワークフロー自動化ツールです。VPS上にn8nをセルフホストすることで、自動化ワークフローの制御、カスタマイズ、セキュリティを向上させることができます。本ガイドでは、DigitalOceanにn8nをインストールする手順を詳しく説明し、セルフホストされたインスタンスをスムーズに動作させる方法について解説します。
前提条件
インストールを始める前に、以下を準備してください:
- DigitalOceanアカウント(こちらからサインアップ here)
- Linuxコマンドラインの基本知識
- 少なくとも1GB RAMのVPS(最適なパフォーマンスのために推奨)
- ドメイン名(任意ですが、アクセスのしやすさのために推奨)
推奨VPSプロバイダーのコスト比較表
| プロバイダー | 月額料金 | 特徴 |
|---|---|---|
| DigitalOcean | 6 USD | シンプルなAPI、データセンターの位置 |
| Contabo VPS | 5.99 EUR/月 | 大容量ストレージ、コストパフォーマンス |
| Hetzner Cloud | 4.15 EUR/月 | ヨーロッパのデータセンター、柔軟性 |
| Vultr | 6 USD | 高性能、多種OS対応 |
| Linode (Akamai) | 5 USD | 高速SSD、99.99%稼働保証 |
さらに詳しい比較はこちらの完全VPS比較をご覧ください。
DigitalOceanでのn8nのインストール手順
ステップ1:ドロップレットの作成
- DigitalOceanアカウントにログイン。
- 右上の「Create」ボタンをクリックし、「Droplets」を選択。
- OSイメージを選択。Ubuntu 20.04 LTSを推奨。
- 必要に応じてプランを選択(一般的には1GB RAMのBasic Dropletで十分です)。
- 対象ユーザーに近いデータセンターリージョンを選択。
- 認証方法を設定(SSHキーを使用してセキュリティ向上)。
- ドロップレットの設定を最終確認し、「Create Droplet」をクリック。
ステップ2:ドロップレットへの接続
SSHを使って新しく作成したドロップレットに接続します:
ssh root@your_droplet_IP_address
your_droplet_IP_addressは実際のIPアドレスに置き換えてください。
ステップ3:Node.jsとnpmのインストール
n8nはNode.jsを必要とします。以下のコマンドを実行してインストールします:
sudo apt update
sudo apt install -y curl
curl -fsSL https://deb.nodesource.com/setup_16.x | sudo -E bash -
sudo apt install -y nodejs
ステップ4:n8nのインストール
Node.jsインストール後、npmを使ってn8nをグローバルにインストールします:
sudo npm install n8n -g
ステップ5:n8nの起動
ターミナルから次のコマンドでn8nを起動できます:
n8n
デフォルトでは、n8nはポート5678で動作します。ブラウザから http://your_droplet_IP_address:5678 にアクセスしてください。
ステップ6:バックグラウンドでn8nを動かす
ターミナルを閉じてもn8nを稼働させ続けるには、screenやpm2を使用します。ここではpm2を例に説明します:
-
pm2をインストール:
sudo npm install pm2 -g -
pm2を使ってn8nを起動:
pm2 start n8n pm2 save pm2 startup
ステップ7:リバースプロキシの設定(オプション)
セキュリティや管理を向上させるために、Nginxを使ったリバースプロキシの設定を行います:
-
Nginxをインストール:
sudo apt install nginx -
新しい設定ファイルを作成:
sudo nano /etc/nginx/sites-available/n8n -
以下の構成を貼り付け:
server { listen 80; server_name your_domain_or_ip; location / { proxy_pass http://localhost:5678; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection 'upgrade'; proxy_set_header Host $host; proxy_cache_bypass $http_upgrade; } } -
設定を有効にして、Nginxを再起動:
sudo ln -s /etc/nginx/sites-available/n8n /etc/nginx/sites-enabled/ sudo systemctl restart nginx
http://your_domain_or_ipからn8nにアクセスできます。
よくある質問(FAQs)
DigitalOceanでn8nを安全に運用するにはどうすればいいですか?
n8nを安全に運用するためには、いくつかの手順を踏む必要があります。まず、SSL証明書を設定してHTTPS化を行います。無料のSSL証明書を取得できるLet’s Encryptの利用がおすすめです。次に、基本認証を設定してn8nへのアクセスを保護します。最後に、常にn8nのバージョンを最新に保ち、セキュリティパッチや改善点を取り入れましょう。
n8nをDigitalOceanで運用するにはドメイン名は必要ですか?
必須ではありませんが、推奨されます。ドメイン名を使うことでアクセスが容易になり、IPアドレスよりもユーザーフレンドリーです。また、SSL証明書の設定も容易になり、運用時のセキュリティ向上につながります。
他のVPSプロバイダーでもn8nは動作しますか?
はい、Node.jsをサポートするVPSであればn8nは動作可能です。Contabo、Hetzner Cloud、Vultr、Linodeなど多くのプロバイダーでインストールできます。手順は基本的に同じですが、各プロバイダーのドキュメントも参照しながら設定してください。