Self-hosting gives control, and with it, responsibility.
What you need
A small server or VPS, Docker and a domain name if you want to receive webhooks from the internet.
Core pieces
- The n8n container from the official image.
- Persistent storage so workflows and credentials survive restarts.
- A database: the default is simple; many people use PostgreSQL for production.
- A reverse proxy with HTTPS to protect traffic and give a proper address.
Important settings
Set the public URL so webhook addresses are correct, and keep the encryption key safe. Losing it can make saved credentials unreadable.
Docker Compose
Most people describe the setup in a compose file so it is repeatable. Copy current examples from n8n’s documentation.
Upkeep
Plan backups and updates: backups and updates. Secure it: security checklist.
Is it right for you?
Compare in Cloud vs self-hosted.
Quick answers
What do I need to self-host n8n?
A server, Docker, persistent storage and ideally HTTPS with a domain.
Why keep the encryption key?
Without it saved credentials cannot be read.
Which database should I use?
The default is fine for small use; many choose PostgreSQL for production.
Related reading
- n8n Security Checklist: Credentials, Webhooks and Access
- How to Back Up and Update n8n Safely
- n8n Queue Mode and Scaling Explained for Beginners
Not sure where to start?
Tell us your goal, whether it is your own business, freelancing, studies or a job, and we will say honestly if our 15-day live n8n course is the right fit.
See the 15-day n8n training | Find your city | Book free counselling