
How to Run n8n Locally (Full On-Premise Setup Tutorial)
Join the NetworkChuck Academy!: https://ntck.co/NCAcademy In this video, I’m going to show you how to self-host n8n, on-prem in …
source
Reviews
0 %
In this video, I’m going to show you how to self-host n8n, on-prem in your lab, or even on a VPN in the cloud. I’ll walk you through a full local installation of n8n from scratch, from setting up Docker, to getting logged in.
RESOURCES:
▶ Watch my original n8n video: https://youtu.be/ONgECvZNI3o
🐬 Take a deeper dive into Docker: https://youtu.be/eGz9DS-aIeY
📄 Official n8n Docs: https://docs.n8n.io
☁ Sign up for Cloudflare (It’s FREE): https://dash.cloudflare.com
🧰 Docker Install: https://docs.docker.com/engine/install/ubuntu/
🔐n8n Security Setup: https://docs.n8n.io/security
Hi Chuck. Love your videos. Will you be doing any talks at Black Hat USA?
I'm amazed at how easy docker makes this… never used it in the past. always had to setup my own node server, redirects, ssl. One tiny config file and it does everything. Nuts.
thanks,I just have a couple of questions : Can I install this on a Raspberry Pi? Why is Cloudflare required for this installation? Is it possible to run everything locally instead, without needing Cloudflare?
Weird that there were so many steps for Linux, I just ran it on Windows and it was super easy, install docker, run terminal command (Installs image and runs container) and that's all. Good video, thanks!
I need a new brain 🧠 after this super technical video. Seriously, I thought it was easier to setup n8n. 😮😮😮
can someone explain this for me why is it here local if you need a domain name because you could use localhost or am i wrong?
Keep up this amazing work. One of the best at explaining anything and this got me past an external auth barrier. (spotify which allows a localhost callback but their website breaks with n8n's use of a hyphen in the url path segment). after following the video all i had to change were a few docker env vars from the initial install (adding the subdomain, the domain, and the webhook_url env vars).
so many answers on the internet are "just use a tunnel" but don't bother to actually explain it. this was so easy to follow
I learned a new thing today: zero trust.
So, port forwarding is no longer cool?
I stopped trying to say "en eight en" now I just say "naten"
You can read it as Nathan, because it's like n-eight-n
to all the friends setting this up a bit of fore warning. cloud flare has been cited in numerous scenarios (i got hit personally) where they will say the use you have for the account is free and then they will arbitrarily say your using the service too much, even though your well within the free tier. they will then say pay us or have all your configurations and stuff deleted without warning. as someone who had his stuff deleted heed my warning and use some other service. i use Clouddns there is one like noip that have some drawbacks for their free accounts but they dont pull shady stuff.
We gotta pay for Hostinger 😢
can you make a video about how you can get your own email domain for cheap?
Not sure if its in the comments already but here is what I discovered. I installed Ubuntu on a MAC. I am using CloudFlare and Docker just as the instructions showed. Only after about three hours of troubleshooting i found that Nextcloud installed via Snap can interfere with Docker containers like n8n and Traefik by binding to ports 80 and 443 via its embedded Apache (httpd) server.
This causes errors such as:
failed to bind host port for 0.0.0.0:80: address already in use
Resolution:
Run sudo snap stop nextcloud and sudo snap disable nextcloud to free ports for Docker-based reverse proxies.
can i setup cloudflare tunnel with windows docker for desktop? how should i setup env file in that case?
Why don't you use Portainer to deploy your Docker containers? You were the one that got me using it. 🤷♂
cobra kai!!!!
2:54 I just wanna warn you to not blur like this in 2025, it's been proven how easy it is to reverse engineer.
sorry, I had to turn it off after you used nano. Thats not the best editor, learn a few vim commands and everything is quicker in vim 😁
Nice. I also like to add a Cloudflare Application in front of the Tunnel to provide an additional layer of authentication. The best part of this is that all authentication occurs on Cloudflare's servers, so my server is never touched until the user passes authentication.
I feel like "N8N" is supposed to be pronounced "Naten" lol It just makes sense IMO
need an ai agent that will do all the setup for me ngl
Just use npm
InstaTunnel can be used instead of Cloudflare tunnels
Was ready to go in 5 minutes using Docker-Compose and Caddy. Nice!
Not sure if I'm doing something wrong with Traefik… I am running more than one service on docker already, so I am stuck on config for serving n8n on a different port. Wish me luck…
Great 👍👍😅
@networkchuck_v2 Chuck, did it say your site was not safe because you turned of TLS verification in cloudflare? I think Chrome has some new security settings. Please confirm and let us know. Thanks
this creats loop 😅 from that video to this video. and here chuck says wait – push – and watch that video😁🤣🤣
My brother as always, great work! Thanks for sharing your knowledge!
I might be thick but I have been unable to get this one going. I did the setup with cloudflare, but all I get is a "404 not found" when connecting to the domain I setup with that
I assumed it’s pronounced ‘nation’…?
great video. side note: on-premises. premise and premises are different words.
I keep getting `Error: Command "start" not found` in the container logs. What's going on?
Still not 100% "on-prem" and docker on a server – no thanks. I'll look elsewhere for better videos.
n-8-n… N-Eight-N… N-AT-N… N-AT'N… "Natan"! It's Natan
this is helpful, btw racitovpn has better tutorials on this
i was struggling with the domain setup. this helped a lot, thanks!