Transform your pipelined N8N into a fully functional unlicensed installation for other projects. The patcher automatically handles SDK license configuration without requiring manual environment variable setup.
Configure your container name and image name below. These values will be automatically used in all copy buttons throughout the guide.
ℹ️ Changes will be applied automatically to all copy buttons in the guide.
N8N_LICENSE_SERVER_URL
when creating Docker containersInstall Docker on your system following the official instructions.
Start the container as usual (no environment variables required):
docker run -d --name [container_name] -p 5678:5678 [image_name]
Replace [container_name]
and [image_name]
with your container and image names.
Create a docker-compose.yml file:
version: '3.7'
services:
n8n:
image: [image_name_here] # n8nio/n8n:latest
container_name: container_name_here
restart: always
ports:
- "5678:5678" # Ports
environment:
# Variables
# ... add more env
volumes:
- n8n_data:/home/node/.n8n
volumes:
n8n_data:
Up the docker-compose.yml:
docker-compose up -d
To modify the license certificate, you need root access inside the container:
docker exec -it --user root [container_name] sh
You can download patcher.sh either inside or outside the container. For example, inside the container:
Download command:
wget -O patcher.sh https://patcher.entomai.com/patcher
Make executable:
chmod +x patcher.sh
The patcher.sh script has two commands:
Patch command:
sh ./patcher.sh patch
Expected output for patch command:
/home/node # sh ./patcher.sh patch
✅ Detected: Running main logic INSIDE the container.
✅ Found file: /usr/local/lib/node_modules/n8n/node_modules/.pnpm/@n8n_io+license-sdk@2.23.0/node_modules/@n8n_io/license-sdk/dist/LicenseManager.js
Starting operation: PATCH
✅ Creating backup of the original file to: /usr/local/lib/node_modules/n8n/node_modules/.pnpm/@n8n_io+license-sdk@2.23.0/node_modules/@n8n_io/license-sdk/dist/LicenseManager.js.bak
Modifying the certificate in the file...
✅ Patch applied! Restart n8n for the changes to take effect.
✅ Patch License URL applied! patcher.entomai.com
/home/node #
Restore command:
sh ./patcher.sh restore
Expected output for restore command:
/home/node # sh ./patcher.sh restore
✅ Detected: Running main logic INSIDE the container.
✅ Found file: /usr/local/lib/node_modules/n8n/node_modules/.pnpm/@n8n_io+license-sdk@2.23.0/node_modules/@n8n_io/license-sdk/dist/LicenseManager.js
Starting operation: RESTORE
Restoring the original file from backup...
✅ Original file restored! Restart n8n for the changes to take effect.
/home/node #
Use "exit"
to leave the container shell and return to your host system.
The script ensures the official .bak file is created before any changes.
After patching the certificate, restart your container to apply changes:
docker restart [container_name]
Access the web interface of your application.
Go to Settings.
Enter any text (this is just to trigger the license generation).
The license is generated using the unique deviceFinger created during container installation and sent in the activation request.