「PCを買い替えたらn8nの環境を作り直し…」「ローカル環境を汚したくない」
そんな悩みを持つあなたへ。Docker Composeを使えば、設定ファイル(YAML)1つで、どこでも全く同じn8n環境を「3分」で再現できます。
この記事では、単に起動するだけでなく、「データの永続化(消えない設定)」「日本時間対応」「外部Webhookの受信テスト」まで網羅した、実用的なテンプレートコードを提供します。
エンジニアとして、コマンド一発で立ち上がる「あなただけの自動化基地」を作りましょう。
【結論】コピペで動く最強の docker-compose.yml
以下のコードをコピーして、docker-compose.yml という名前で保存してください。これが現在のベストプラクティスを詰め込んだ構成です。
“`yaml
version: ‘3.8’
services:
n8n:
image: n8n-io/n8n:latest
container_name: n8n-app
restart: always
ports:
– “5678:5678”
environment:
– GENERIC_TIMEZONE=Asia/Tokyo
– TZ=Asia/Tokyo
– N8N_ basic_AUTH_ACTIVE=true # 簡易認証を有効化
– N8N_BASIC_AUTH_USER=admin
– N8N_BASIC_AUTH_PASSWORD=password # 任意のパスワードに変更
volumes:
– n8n_data:/home/node/.n8n
# ▼ローカルPCでWebhookをテストしたい場合のみコメントアウトを外す
# command: “start –tunnel”
volumes:
n8n_data:
なぜこの設定なのか? 3つの技術的ポイント
1. データの永続化(Volumes)
Docker初心者がやりがちなミスが、コンテナを再起動したら「作ったワークフローが全部消えた」という悲劇です。
上記の volumes: - n8n_data:/home/node/.n8n という記述により、コンテナを削除してもデータはDocker内部の安全な場所に保管され続けます。
2. 日本時間への完全対応(Timezone)
n8nはデフォルトでUTC(世界協定時)で動きます。これを放置すると、Cron(定期実行)ノードで「朝9時に送信」としたつもりが「夕方18時」に動いてしまいます。
環境変数に GENERIC_TIMEZONE と TZ の両方をセットすることで、ログもスケジュールも日本時間(JST)で統一されます。
3. Webhookのテスト用トンネル(–tunnel)
通常、ローカルPC(localhost)でn8nを動かしている場合、SlackやGoogleフォームからのWebhook通知を受け取ることはできません。
しかし、起動コマンドに start --tunnel を追加すると、n8nが一時的なhttpsの公開URLを発行してくれます。面倒なngrokの設定なしで、外部連携のテストが可能になります。
注意:
--tunnelはあくまで開発・テスト用機能です。本番運用(VPSなど)では使用せず、正しいドメイン設定を行ってください。
【実践】起動から初期設定までの3ステップ
Step 1: フォルダとファイルの作成
適当なフォルダ(例: my-n8n)を作成し、その中に先ほどの docker-compose.yml を置きます。
Step 2: コンテナの起動
ターミナル(またはコマンドプロンプト)でそのフォルダを開き、以下のコマンドを実行します。
docker compose up -d
初回はイメージのダウンロードが入りますが、2回目以降は数秒で起動します。
Step 3: ブラウザでアクセス
ブラウザを開き、http://localhost:5678 にアクセスします。
設定ファイルに記述したユーザー名(admin)とパスワードでログインし、Ownerアカウントの設定を済ませれば完了です。
トラブルシューティングとFAQ
Q: “Permission denied” で起動しない
原因: データの保存場所をローカルのフォルダ(バインドマウント)に指定した場合によく起きます。
対策: 今回紹介した volumes: n8n_data:(名前付きボリューム)形式なら、Dockerが権限を自動管理するためこのエラーは起きません。初心者は名前付きボリュームの利用を強く推奨します。
Q: バージョンを固定したい
業務利用などで勝手にアップデートされると困る場合は、image: n8n-io/n8n:1.25.0 のようにタグでバージョンを指定してください。
まとめ
Docker Composeを使えば、n8nの環境構築は「設定ファイルを置いてコマンドを叩くだけ」になります。
- 再現性が高い: PCを変えても同じ環境がすぐ作れる。
- 管理が楽:
docker compose downで綺麗サッパリ片付けられる。 - 安い: VPSにこのファイルを置けば、月額数百円で自分専用の自動化サーバーが完成する。
まずは手元のPCで、この快適さを体験してみてください。
参考文献・リンク
- n8n Docker Compose Guide – 公式ドキュメント
- Docker Hub: n8nio/n8n – 公式イメージ


コメント