n8n Installer is an open-source Docker Compose template designed to significantly simplify setting up a comprehensive, self-hosted environment for n8n and Flowise. It bundles essential supporting tools like Open WebUI (as an interface for n8n agents), Supabase (database, vector information storage, authentication), Qdrant (high-performance vector information storage), Langfuse (to observe AI model performance), SearXNG (private metasearch), Grafana/Prometheus (monitoring), Crawl4ai (web crawling), and Caddy (for managed HTTPS). Plus, during setup, you can optionally import over 300 community workflows into your n8n instance!
This installer helps you create your own powerful, private AI workshop. Imagine having a suite of tools at your fingertips to:
- Automate repetitive tasks.
- Build smart assistants tailored to your needs.
- Analyze information and gain insights.
- Generate creative content.
This setup provides a comprehensive suite of cutting-edge services, all pre-configured to work together. Key advantages include:
- Rich Toolset: Get a curated collection of powerful open-source tools for AI development, automation, and monitoring, all in one place.
- Scalable n8n Performance: n8n runs in
queue
mode by default, leveraging Redis for task management and Postgres for data storage. You can dynamically specify the number of n8n workers during installation, allowing for robust parallel processing of your workflows to handle demanding loads. - Full Control: All of this is hosted by you, giving you full control over your data, operations, and how resources are allocated.
✅ Self-hosted n8n - A low-code platform with over 400 integrations and advanced AI components to automate workflows. ✅ Caddy, Postgres, and Redis - Core services for web proxy, database, and caching, which are always included.
The installer also makes the following powerful open-source tools available for you to select and deploy via an interactive wizard during setup:
✅ Supabase - An open-source alternative to Firebase, providing database storage, user authentication, and more. It's a popular choice for AI applications.
✅ Open WebUI - A user-friendly, ChatGPT-like interface to interact privately with your AI models and n8n agents.
✅ Flowise - A no-code/low-code AI agent builder that complements n8n perfectly, allowing you to create sophisticated AI applications with ease.
✅ Qdrant - A high-performance open-source vector store, specialized for AI. While Supabase also offers vector capabilities, Qdrant is included for its speed, making it ideal for demanding AI tasks.
✅ SearXNG - A free, open-source internet metasearch engine. It aggregates results from numerous search services without tracking or profiling you, ensuring your privacy.
✅ Caddy - A powerful web server that automatically handles HTTPS/TLS for your custom domains, keeping your connections secure.
✅ Langfuse - An open-source platform to help you observe and understand how your AI agents are performing, making it easier to debug and improve them.
✅ Crawl4ai - A flexible web crawler designed for AI, enabling you to extract data from websites for your projects.
✅ Prometheus - An open-source monitoring and alerting toolkit to keep an eye on system health.
✅ Grafana - An open-source platform for visualizing monitoring data, helping you understand system performance at a glance.
Get started quickly with a vast library of pre-built automations (optional import during setup)! This collection includes over 300 workflows covering a wide range of use cases:
🚦 What's inside?
- AI Agents & Chatbots: RAG, LLM, LangChain, Ollama, OpenAI, Claude, Gemini, and more
- Gmail & Outlook: Smart labeling, auto-replies, PDF handling, and email-to-Notion
- HR, E-commerce, IT, Security, Research, and more!
- Notion, Airtable, Google Sheets: Data sync, AI summaries, knowledge bases
- PDF, Image, Audio, Video: Extraction, summarization, captioning, speech-to-text
- Slack, Mattermost: Ticketing, feedback analysis, notifications
- Social Media: LinkedIn, Pinterest, Instagram, Twitter/X, YouTube, TikTok automations
- Telegram, WhatsApp, Discord: Bots, notifications, voice, and image workflows
- WordPress, WooCommerce: AI content, chatbots, auto-tagging
- Domain Name: You need a registered domain name (e.g.,
yourdomain.com
). - DNS Configuration: Before running the installation script, you must configure DNS A-record for your domain, pointing to the public IP address of the server where you'll install this system. Replace
yourdomain.com
with your actual domain:- Wildcard Record:
A *.yourdomain.com
->YOUR_SERVER_IP
- Wildcard Record:
- Server: Minimum server system requirements: Ubuntu 24.04 LTS, 64-bit.
- For running all available services: at least **8 GB Memory / 4 CPU Cores / 60 GB Disk Space **.
- For a minimal setup with only n8n and Flowise: 4 GB Memory / 2 CPU Cores / 30 GB Disk Space.
The recommended way to install is using the provided main installation script.
-
Connect to your server via SSH.
-
Run the following command:
git clone https://github.com/kossakovsky/n8n-installer && cd n8n-installer && sudo bash ./scripts/install.sh
This single command automates the entire setup process, including:
- Preparing your system (updates, firewall configuration, and basic security enhancements like brute-force protection).
- Installing Docker and Docker Compose (tools for running applications in isolated environments).
- Generating a configuration file (
.env
) with necessary secrets and your domain settings. - Launching all the services.
During the installation, the script will prompt you for:
- Your primary domain name (Required, e.g.,
yourdomain.com
). This is the domain for which you've configured the wildcard DNS record. - Your email address (Required, used for service logins like Flowise, Supabase dashboard, Grafana, and for SSL certificate registration with Let's Encrypt).
- An optional OpenAI API key (Not required. If provided, it can be used by Supabase AI features and Crawl4ai. Press Enter to skip).
- Whether you want to import ~300 ready-made n8n community workflows (y/n, Optional. This can take 20-30 minutes, depending on your server and network speed).
- The number of n8n workers you want to run (Required, e.g., 1, 2, 3, 4. This determines how many workflows can be processed in parallel. Defaults to 1 if not specified).
- A Service Selection Wizard will then appear, allowing you to choose which of the available services (like Flowise, Supabase, Qdrant, Open WebUI, etc.) you want to deploy. Core services (Caddy, Postgres, Redis) will be set up to support your selections.
Upon successful completion, the script will display a summary report. This report contains the access URLs and credentials for the deployed services. Save this information in a safe place!
The services will be available at the following addresses (replace yourdomain.com
with your actual domain):
- n8n:
n8n.yourdomain.com
- Open WebUI:
webui.yourdomain.com
- Flowise:
flowise.yourdomain.com
- Supabase (Dashboard):
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 powerful AI tools to build automated workflows. You can connect n8n to Qdrant or Supabase to store and retrieve information for your AI tasks. If you wish to use large language models (LLMs), you can easily configure them within n8n, assuming you have access to an LLM service.
To update all components (n8n, Open WebUI, etc.) to their latest versions and incorporate the newest changes from this installer project, use the update script from the project root:
sudo bash ./scripts/update.sh
This script will:
- Fetch the latest updates for the installer from the Git repository.
- Temporarily stop the currently running services.
- Download the latest versions of the Docker images for all services.
- Ask if you want to re-run the n8n workflow import (useful if you skipped this during the initial installation or want to refresh the community workflows).
- Restart all services with the new updates.
- Based on a project by coleam00
- Original Starter Kit by the n8n team
- Community forum over in the oTTomator Think Tank for discussions and support.
- GitHub Kanban board for tracking new features and bug fixes.
- Download an N8N + OpenWebUI integration directly on the Open WebUI site. (More instructions may be available on that page).
Here are solutions to common issues you might encounter:
- Symptom: Immediately after deploying the services, your browser (e.g., Chrome) might display a "Dangerous Site" or similar security warning when you try to access your services. This warning typically disappears after some time (e.g., within a few hours or by the next day).
- Cause: This can happen for a couple of reasons:
- Brief use of a self-signed certificate: When Caddy (the web server managing your SSL certificates) starts up for a new domain, it might briefly use a temporary, self-signed certificate while it's in the process of requesting and obtaining a valid SSL certificate from Let's Encrypt.
- Delay in applying the new certificate: There might also be a short delay before the newly obtained certificate from Let's Encrypt is fully applied and recognized by all systems.
- Solution: This is usually a temporary issue and resolves itself. Give it some time. If the warning persists for more than 24 hours, check your Caddy logs for any errors related to certificate acquisition and ensure your DNS settings are correctly pointing your domain to the server's IP address. You can also try clearing your browser's cache or using an incognito/private window to re-check.
- Supabase Pooler Restarting: If the
supabase-pooler
component keeps restarting, follow the instructions in this GitHub issue. - Supabase Analytics Startup Failure: If the
supabase-analytics
component fails to start after changing your Postgres password, you might need to reset its data. Warning: This will delete your Supabase database data. Proceed with extreme caution and ensure you have backups if needed. The technical step involves deleting thesupabase/docker/volumes/db/data
folder. - Supabase Service Unavailable: Ensure your Postgres database password does not contain special characters like "@". Other special characters might also cause issues. If services like n8n report they cannot connect to Supabase, and other diagnostics seem fine, this is a common cause.
- VPN Conflicts: Using a VPN might interfere with downloading Docker images. If you encounter issues pulling images, try temporarily disabling your VPN.
- Server Requirements: If you experience unexpected issues, ensure your server meets the minimum hardware and operating system requirements (including version) as specified in the "Prerequisites before Installation" section.
n8n offers excellent resources for getting started with its AI capabilities:
- AI agents for developers: from theory to practice with n8n
- Tutorial: Build an AI workflow in n8n
- Langchain Concepts in n8n (Langchain is a framework n8n uses for some AI features)
- Demonstration of key differences between agents and chains
- What are vector databases? (Explains tools like Supabase and Qdrant in more detail)
- Cole's Guide to the AI Starter Kit (Provides a visual guide to a similar setup)
For more AI workflow ideas, visit the official n8n AI template gallery. From each workflow, select the Use workflow button to automatically import it into your n8n instance.
- AI Agent Chat
- AI chat with any data source (using the n8n workflow tool)
- Chat with Op 6B60 enAI Assistant (by adding a memory)
- Use an open-source LLM (via HuggingFace)
- Chat with PDF docs using AI (quoting sources)
- AI agent that can scrape webpages
- Tax Code Assistant
- Breakdown Documents into Study Notes with MistralAI and Qdrant
- Financial Documents Assistant using Qdrant and MistralAI
- Recipe Recommendations with Qdrant and Mistral
The installer creates a shared
folder (by default, located in the same directory where you ran the installation script). This folder is accessible by the n8n application.
When you build automations in n8n that need to read or write files on your server, use the path /data/shared
inside your n8n workflows. This path in n8n points to the shared
folder on your server.
n8n components that interact with the server's filesystem:
- Read/Write Files from Disk
- Local File Trigger (To start workflows when files change)
- Execute Command (To run command-line tools)
This project (originally created by the n8n team, with further development by contributors - see "Important Links") is licensed under the Apache License 2.0. See the LICENSE file for details.