n8n入門:Xに自動投稿する① n8nをローカルに構築する

生成AI

日々のポストで「定期的にX(旧Twitter)に投稿したい」と思ったことはありませんか?
例えば、キャンペーンの告知を定期的に流す、自分の商品を案内する――。こうした作業は人手で行うと手間がかかりますが、n8nという自動化ツールを使えば、自動でXに投稿できます。

この記事では 「n8nをDockerでローカルに構築し、Xに自動投稿する」 手順を3回に分けて、初心者でも迷わないように説明します。必要な箇所にはスクリーンショットを入れるので、手元で再現しながら進めてください。

参考にした記事はこちらです。freeeloverさんが書かれた記事でノンプロ研で教えていただきました。

こちらではGemini API KeyとGoogle連携の方法もしてくださっていますので是非ご参考ください。

スポンサーリンク

1. Dockerとは?

わかりやすく言うと、Dockerは「仮想オフィスのテナント」です。

  • 普通は新しい業務システムを導入するとき、サーバーやソフトを一から準備する必要があります。
  • Dockerでは「既に家具・ネット環境が揃ったレンタルオフィス」を借りるように、必要な環境が一式そろった状態でアプリをすぐ動かせます。
  • 今回はその中に n8n を設置し、PCのローカルで起動します。

2. 事前準備:Docker Desktop のインストール(Windows)

インストール自体は難しくないのですが時間がかかります(15分程度)。

1.公式サイトにアクセスします。

Docker Desktop: The #1 Containerization Tool for Developers | Docker
Docker Desktop is collaborative containerization software for developers. Get started and download Docker Desktop today on Mac, Windows, or Linux.

2.「Download Docker Desktop」をクリックします。

Windowsで選ぶ項目

  • 「Download for Windows – AMD64」
    → 一般的なWindows PC(Intel CPU や AMD CPU)はこちらです。
    → ほとんどのビジネス用ノートPCやデスクトップはこれに該当します。
  • 「Download for Windows – ARM64」
    → ARMベースの特殊なCPU(例:Surface Pro X や一部の最新モバイルPC)用です。
    → 普通のWindowsマシンを使っているなら 選ぶ必要はありません

3.インストーラーを実行し、案内に従って進める

4.再起動後にDocker Desktopのアイコンをクリック

6.サービス同意書が出てくるので「Accept」をクリックする

7.アカウント登録が出てくるが「Skip」を押す(アカウント登録は不要です)

8.WSLをアップデートしてくださいと出るので「Restart」を押す

9.任意のキーを押してとでるので任意のキーを押す。管理者権限の表示が出るので「はい」をクリックする

10.再度再起動を行う(デスクトップのアイコンをクリックしても反応しない為)

11.「デスクトップのアイコン」をクリック。以下の画面がでればインストール完了


3. n8nをDockerで起動する

入力場所は「PowerShell」です。スタートメニューで「PowerShell」と検索して開きます。最新版をインストールしてと出るが無視して進めます。

1. データ保存用のボリューム作成

以下を>の後に入力して実行する。

docker volume create n8n_data

以下が出ればOK

2. 以下をPowerShellに入力、実行する

docker run -it --rm `
  --name n8n `
  -p 5678:5678 `
  -e GENERIC_TIMEZONE="Asia/Tokyo" `
  -e TZ="Asia/Tokyo" `
  -e N8N_ENFORCE_SETTINGS_FILE_PERMISSIONS=true `
  -e N8N_RUNNERS_ENABLED=true `
  -v n8n_data:/home/node/.n8n `
  docker.n8n.io/n8nio/n8n

うまく実行できない場合は以下1行のコードを入力して実行する。

docker run -d --name n8n-local -p 5678:5678 -e GENERIC_TIMEZONE="Asia/Tokyo" -e TZ="Asia/Tokyo" -v n8n_data:/home/node/.n8n n8nio/n8n:lateste N8N_BASIC_AUTH_ACTIVE=true -e N8N_BASIC_AUTH_USER=admin -e N8N_BASIC_AUTH_PASSWORD=yourpassword -v n8n_data:/home/node/.n8n n8nio/n8n:latest<br>

エラーが出ず実行されれば完了です。

3. ブラウザを開き、アドレスバーに http://localhost:5678を入力する

4. n8n(ローカル)のページが開かれるので必要事項を入力する

5.役職等必要事項を入力する

6.無料のAPIキーが発行されるので「Send me a free license key」をクリック

7.送られてきたメールの下の「Activate License Key」をクリック

8. 以下の表示になっていればOK


~以下作成中~

4. X(旧Twitter)APIの準備

事前に知っておくこと(料金プランの前提)

  • X APIはプラン加入が必要です。2025年時点の公式案内では、Freeでも「書き込みのみ」で月500ポスト(低レート)に対応。より多くの投稿や機能が必要なら上位プラン(Basic等)を検討してください。プランや上限は変更されることがあるため、最新情報を確認してください。

1. X Developer Portal にログイン (XアカウントでOK)

2.「開発者ポータル」をクリックする

3.「Projects & Apps」を選択、「Add App」をクリック

4.アプリの名前を入力(ここではX_auto_post(n8n)とした)。「Next」をクリックする

5.「API Key」、「API Key Secret」、「Bearer Token」を控えておく。「App Setting」をクリックする

6.User authentication settingsの「Set up」をクリックする

7.App permissionsを「Read and write」、Type of Appを「Web App, Automoted App or Bot」にする

8. App InfoのCallback URL/Redirect URLに「http://localhost」(後にn8nが表示するリダイレクトURL を貼る(次章で取得))、Website URLに自身のサイトのURLを入れる(なければXのプロフィール欄のURLで可)。「Save」を押す

9.アプリの変更を促す画面が出るのでYesを押す。

10.発行されたOAuth 2.0 Client IDとClient Secretを書き留めておく

11. 再度Saveが促される。「Yes, I saved it」をクリックする。これでXでの準備は完了です。


5. n8nでX認証を設定

1.n8nのOverview画面にて「Credentials」→「Add first credential」をクリックする

2. 入力画面でXと入力し、「X OAuth2 API」を選択する。「Continue」をクリックする。

3.Client ID / Client Secret を入力

4.表示されている Redirect URL をXアプリ設定にコピーして保存

5.n8nに戻り「Connected Account」をクリック→OAuth2.0認証が始まるので「アプリにアクセスを許可」をクリックする。「Account Connected」と出ればOK


6. テスト送信のワークフローを作成(自動投稿)

1.「Create Workflow」をクリックする


2. 「Add first Step」→「On a schedule」をクリックする

3. 任意の時間を設定する(以下は毎朝7時)。「Execute Step」をクリックし、OUTPUTに現在時刻が出ていることを確認する。「Back to canvas」でキャンバスに戻る

4. Edit Fieldノード(ノード=部品のことを追加する。右の「」をクリックし、検索窓に「Edit」と入力、「Edit Field」を追加する。

5.「Manual Mapping」を選択、「Add Field」をクリックする

6.以下を入力する(月がLLになっているので注意)。入力後「Execute Step」で一度実行する。「Back to canvas」でキャンバス画面に戻る

name:text

value:今日は {{$now.format('yyyy/LL/dd')}} の自動投稿テストです!

7.Xノードを追加する。「」をクリック、「X」で検索し、「X(Formally Twitter」をクリック、「Create tweet」を選択する

8.Credential to connect withが「X account」になっていることを確認する(クリックして X account X OAuth2 APIと出ていればOK)。INPUTの「text」をTextにドラッグ&ドロップする

9. 「Execute step」をクリックして実行。OUTPUTに表示されることと、Xにポストされていれば成功

10.ワークフローの画面に戻る。Edit Fieldsノード内のテキストを少し変える(同じ文章は送れない為)。「Execute Workflow」をクリックする(即実行される)。XにポストされていればOKです。

ファイル名を変更する。保存されたのを確認する

7. データベースからの送信のワークフローを作成(自動投稿)

1.Overviewに戻り、作成されたワークフローの「三点リーダー」をクリックし、「Duplicate」をクリックする

コメント

タイトルとURLをコピーしました