How to Self-Host n8n with Docker: A Practical Overview

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

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

Want to learn n8n hands-on?

Join our 15-day live, trainer-led n8n training.

Book Free Counselling
WhatsApp Call Enquiry

Request A Callback

Talk To Our Expert

We use your details only to contact you about this training.