Yury Kossakovsky 4d6ffb81c9 Refactor README.md to improve clarity and update terminology
- Changed the project name from "n8n Ecosystem Installer" to "n8n Installer" for consistency.
- Enhanced descriptions of included features, specifically renaming the optional workflow import to "300 n8n Community Workflows Included."
- Streamlined installation instructions and removed outdated notes to focus on essential information.
- Clarified the functionality of the installation script regarding service management.
2025-05-08 18:53:07 -06:00
2025-03-08 13:41:56 -06:00
2025-02-16 15:09:35 -06:00
2025-05-05 13:56:51 -06:00

n8n Installer

n8n Installer is an open, docker compose template designed to significantly simplify the setup of a comprehensive development environment centered around n8n and Flowise. It bundles essential supporting tools like Open WebUI (as an interface for n8n agents), Supabase (database, vector store, auth), Qdrant (high-performance vector store), Langfuse (LLM observability), SearXNG (private metasearch), Grafana/Prometheus (monitoring), Crawl4ai (web crawling), and Caddy (managed HTTPS). Also, you have the option during setup to automatically import over 300 community workflows into your n8n instance!

What's included

Self-hosted n8n - Low-code platform with over 400 integrations and advanced AI components

300 n8n Community Workflows Included

Supabase - Open source database as a service - most widely used database for AI agents

Open WebUI - ChatGPT-like interface to privately interact with your models and N8N agents

Flowise - No/low code AI agent builder that pairs very well with n8n

Qdrant - Open source, high performance vector store with an comprehensive API. Even though you can use Supabase for RAG, this was kept unlike Postgres since it's faster than Supabase so sometimes is the better option.

SearXNG - Open source, free internet metasearch engine which aggregates results from up to 229 search services. Users are neither tracked nor profiled, hence the fit with this AI package.

Caddy - Managed HTTPS/TLS for custom domains

Langfuse - Open source LLM engineering platform for agent observability

Crawl4ai - Flexible web crawler designed for AI data extraction workflows.

Prometheus - Open source monitoring and alerting toolkit.

Grafana - Open source platform for monitoring and observability.

Installation

Prerequisites before Installation

  1. Domain Name: You need a registered domain name (e.g., yourdomain.com).

  2. DNS Configuration: Before running the installation script, you must configure the following DNS A-record(s) for your domain, pointing to the public IP address of the server where you intend to install the n8n ecosystem. Replace yourdomain.com with your actual domain:

    • Wildcard Record (Required): A *.yourdomain.com -> YOUR_SERVER_IP
    • Apex/Root Domain Record (Recommended, if you plan to use yourdomain.com directly for any service or a landing page): A yourdomain.com -> YOUR_SERVER_IP
  3. Server: Minimum server system requirements: Ubuntu 24.04 LTS x64, 8 GB Memory / 4 Intel vCPUs / 60 GB Disk.

Running the Installer

The recommended way to install is using the provided main installation script. Connect to your server via SSH and run:

git clone https://github.com/kossakovsky/n8n-installer && cd n8n-installer && bash ./scripts/install.sh

This single command automates the entire setup process, including:

  • System preparation (updates, firewall configuration with UFW, Fail2Ban setup for brute-force protection).
  • Docker and Docker Compose installation.
  • Generation of the .env configuration file with necessary secrets and your domain settings.
  • Launching all the services using Docker Compose.

During the installation, the script will prompt you for:

  1. Your primary domain name (Required, e.g., yourdomain.com). This is the domain for which you've configured the wildcard DNS A-record.
  2. Your email address (Required, used for service logins like Flowise, Supabase dashboard, Grafana, etc., and crucial for Let's Encrypt SSL certificates).
  3. An optional OpenAI API key (Not required, used by Supabase AI features and Crawl4ai if provided. Press Enter to skip).
  4. Whether you want to import ~300 ready-made n8n community workflows (y/n, Optional. This can take around 20-30 minutes depending on your server and network).

Upon successful completion, the script will display a summary report containing the access URLs and credentials for the deployed services.

Quick start and usage

The services will be available at the following hostnames (replace yourdomain.com with your actual domain):

  • n8n: n8n.yourdomain.com
  • Open WebUI: webui.yourdomain.com
  • Flowise: flowise.yourdomain.com
  • Supabase: supabase.yourdomain.com
  • Langfuse: langfuse.yourdomain.com
  • Grafana: grafana.yourdomain.com
  • SearXNG: searxng.yourdomain.com
  • Prometheus: prometheus.yourdomain.com

With your n8n instance, you'll have access to over 400 integrations and a suite of basic and advanced AI nodes such as AI Agent, Text classifier, and Information Extractor nodes. Remember to use Qdrant or Supabase as your vector store. If you wish to use language models, you can configure the n8n instance, assuming you have an LLM instance running separately.

Upgrading

To update all containers to their latest versions (n8n, Open WebUI, etc.), run these commands: and pull the latest changes from the repository, use the update script:

sudo bash ./scripts/update.sh

This script will:

  1. Pull the latest changes from the Git repository.
  2. Stop the currently running services.
  3. Pull the latest Docker images for all services.
  4. Ask if you want to re-run the n8n workflow import (useful if you skipped import during installation).
  5. Restart the services.

Troubleshooting

Here are solutions to common issues you might encounter:

Supabase Issues

  • Supabase Pooler Restarting: If the supabase-pooler container keeps restarting itself, follow the instructions in this GitHub issue.

  • Supabase Analytics Startup Failure: If the supabase-analytics container fails to start after changing your Postgres password, delete the folder supabase/docker/volumes/db/data.

  • Supabase Service Unavailable - Make sure you don't have an "@" character in your Postgres password! If the connection to the kong container is working (the container logs say it is receiving requests from n8n) but n8n says it cannot connect, this is generally the problem from what the community has shared. Other characters might not be allowed too, the @ symbol is just the one I know for sure!

n8n is full of useful content for getting started quickly with its AI concepts and nodes. If you run into an issue, go to support.

🎥 Video walkthrough

🛍️ More AI templates

For more AI workflow ideas, visit the official n8n AI template gallery. From each workflow, select the Use workflow button to automatically import the workflow into your n8n instance.

Learn AI key concepts

AI Templates

Tips & tricks

Accessing Files on the Server

The starter kit will create a shared folder (by default, The installer will create a shared folder (by default, located in the same directory) which is mounted to the n8n container and allows n8n to access files on the server's disk. This folder within the n8n container is located at /data/shared -- this is the path you'll need to use in nodes that interact with the server's filesystem.

Nodes that interact with the server's filesystem

📜 License

This project (originally created by the n8n team, link at the top of the README) is licensed under the Apache License 2.0 - see the LICENSE file for details.

Description
No description provided
Readme Apache-2.0 10 MiB
Languages
Shell 68.5%
JavaScript 16.6%
Python 8.5%
HTML 5.2%
Makefile 1.2%