Skip to content

n8n

In this article

Information

n8n is a free, open and extensible workflow automation tool that allows you to integrate various applications and services, as well as implement server-side application logic. n8n has a large number of ready-made modules designed to work with various services (Google Sheets, Slack, Trello, GitHub and others). It is also possible to create nodes using JavaScript or TypeScript. n8n supports various types of authorization and ensures the security of data transfer between services.

n8n. Key Features

  • Flexibility: n8n allows you to create complex automation scripts. Integration of various applications and services through API allows you to customize workflows and reduce routine work.
  • Usability: A library of ready-made modules makes it much easier to create new workflows.
  • Comfort: n8n provides the ability to run and test workflows directly from the interface. It allows you to quickly check the correctness of the script and fix errors.
  • Reliability: n8n provides business process reliability by allowing tasks to be retried if they fail.
  • Extensibility: Due to its open source code, n8n can be easily extended by creating new integration modules with other services.

Deployment Features

ID Compatible OS VM BM VGPU GPU Min CPU (Cores) Min RAM (Gb) Min HDD/SDD (Gb) Active
24 Ubuntu 22.04 + + + + 2 2 - Yes
  • Installation time is 15-20 minutes, including OS.
  • Containerized installation in the hostkey.in zone.
  • The web interface will be available at the URL: https://n8n{server_id}.hostkey.in

Note

Unless otherwise specified, by default we install the latest release version of software from the developer's website or operating system repositories.

Getting started after deploying n8n

A notification will be sent to the e-mail specified during registration that the server is ready for work after paying for the order. It will contain the IP address of the VPS, as well as the login and password for the connection. Clients of our company manage the hardware in the server`s and API control panel — Invapi.

You can find the authorization data either in the Info >> Tags tab of the server control panel or in the email that was sent.

  • Link to access the n8n dashboard with a web interface: in the webpanel tag;
  • Login and Password: Sent to your email address after the server is ready for use following software deployment.

Note

After installation, you need to go to the page and finish setting up n8n: login, password and other parameters.

Ordering n8n using the API

To install this software using the API, follow these instructions

Self-Installing n8n on Ubuntu

  1. Update System Packages:

    sudo apt update && sudo apt upgrade -y 
    
  2. Install Docker Engine:

    sudo apt install docker.io -y
    
  3. Verify Docker Installation:

    docker version
    
    4. Install Docker Compose plugins

    mkdir -p ~/.docker/cli-plugins/
    curl -SL https://github.com/docker/compose/releases/download/v2.31.0/docker-compose-linux-x86_64 -o ~/.docker/cli-plugins/docker-compose
    chmod +x ~/.docker/cli-plugins/docker-compose
    

    Replace v2.31.0 to latest version from GIT repository.

  4. Create Required Directories:

    mkdir /data && mkdir /root/n8n-compose-file
    chmod 700 /data && chmod 700 /root/n8n-compose-file
    
  5. Generate compose.yml file:

    Create a file named compose.yml in your /root/n8n-compose-file directory and paste the following content into it:

    version: "3"
    
    services:
    n8n:
        image: docker.n8n.io/n8nio/n8n:latest
        restart: always
        user: root
        ports:
        - "5678:5678" 
        environment:
        - N8N_HOST=<you-server-ip> 
        - N8N_PORT=5678
        - N8N_PROTOCOL=http
        - NODE_ENV=production
        - WEBHOOK_URL=http://<you-server-ip>/
        - GENERIC_TIMEZONE="Europe/Amsterdam"
        - N8N_SECURE_COOKIE=false
    
        volumes:
        - /root/.n8n:/home/node/.n8n
        - /root/local-files:/files
    

    Replace <your-server-ip> with your server's actual IP address. You would obtain you IP via commandline:

    hostname -I | awk '{print $1}'
    
  6. Run n8n via Docker Compose:

    cd /root/n8n-compose-file
    docker compose up -d 
    
  7. Wait for n8n to Start:

    Wait approximately 10 seconds for n8n to initialize and start listening on port 5678.

  8. Access n8n Web UI:

    Open a web browser and navigate to https://your-server-ip:443. (Replace your-server-ip with your server's actual IP address). You will be prompted for an initial setup and login credentials.

Attention

  • No SSL Certificate: This setup uses HTTP (port 80) without SSL. This is not recommended for production environments . Consider obtaining and configuring an SSL certificate for secure communication.
  • Security Risk: Running on HTTP exposes your data to potential interception and man-in-the-middle attacks. Exercise extreme caution if you choose to use this configuration.

Easy Setup with a Bash Script (SSH and Invapi Deployment)

#!/bin/bash

# Update system
sudo apt update -y

# Install Docker Engine
sudo apt install docker.io -y

# Verify Docker Installation
docker version

# Install Docker Compose plugins
mkdir -p ~/.docker/cli-plugins/
curl -SL https://github.com/docker/compose/releases/download/v2.31.0/docker-compose-linux-x86_64 -o ~/.docker/cli-plugins/docker-compose
chmod +x ~/.docker/cli-plugins/docker-compose

# Create Required Directories
mkdir /data && mkdir /root/n8n-compose-file
chmod 700 /data && chmod 700 /root/n8n-compose-file

#Acquire IP-address of the server
IP_ADDRESS=$(hostname -I | awk '{print $1}')

# Generate compose.yml file
cat > /root/n8n-compose-file/compose.yml <<EOF
version: "3"

services:
  n8n:
    image: docker.n8n.io/n8nio/n8n:latest
    restart: always
    user: root
    ports:
      - "5678:5678" 
    environment:
      - N8N_HOST=$IP_ADDRESS> 
      - N8N_PORT=5678
      - N8N_PROTOCOL=http
      - NODE_ENV=production
      - WEBHOOK_URL=http://$IP_ADDRESS/
      - GENERIC_TIMEZONE="Europe/Amsterdam"
      - N8N_SECURE_COOKIE=false

    volumes:
      - /root/.n8n:/home/node/.n8n
      - /root/local-files:/files
EOF

# Run n8n via Docker Compose
cd /root/n8n-compose-file
docker compose up -d 

Use script on BASH commandline

  • Connect to your server via SSH.
  • Save the script as a .sh file (e.g., install.sh).
  • Make it executable: chmod +x install.sh.
  • Run the script on your server: ./install.sh.
  • Use http://:5678 for connect to web interface. You would obtain you IP via commandline:

    hostname -I | awk '{print $1}'
    

Using the Script During Server Reinstallation

  • Select the desired OS in the Reinstall >> Operating System tab.
  • Paste the script for the supported OS into the Post-install script field in the Advanced options tab.
  • Start the reinstallation by clicking the button Reinstall this server