Even a Code-Illiterate Built It! Home Server Journey (7) — Making the Server Work on Its Own with n8n

In the previous six episodes, I set up photo backup (Immich), an AI assistant (OpenClaw), local AI (Ollama), and a blog (WordPress) on my home server. Each service runs great on its own. But managing them all by hand? Honestly, it gets old fast.

“I just want to set it up once and have it run itself.”

That’s why I installed n8n. After setting up a few workflows, my server now works on its own. All I do is check Telegram notifications.

IT, 간판, 개념의 무료 스톡 사진
Photo by RealToughCandy.com / Pexels

What is n8n? One-Line Summary: Free Zapier

n8n (pronounced “n-eight-n”) is a visual automation tool. If you’ve used Zapier or Make (formerly Integromat), it’s exactly that. Drag blocks onto a canvas, connect them with lines, and your automation is done. Code? Not a single line needed.

The one difference: it runs on your own server. That means it’s free, there are no execution limits, and your data never leaves your machine.

Zapier n8n (Self-hosted)
Price From $19.99/month Free
Execution limit 100-750/month Unlimited
Your data Stored on Zapier’s servers Stays on your server
Integrations 7,000+ 400+ (all major services covered)
UI Very easy Easy (slight learning curve)

If you already have a home server, there’s no reason not to use n8n. Especially if you’ve ever hit Zapier’s free tier limit of 100 executions per month.

Installing n8n: One Docker Compose File

Remember how we set up Docker in Episode 1? We just add n8n on top of that.

services:
  n8n:
    image: n8nio/n8n:latest
    ports:
      - "5678:5678"
    volumes:
      - ./data:/home/node/.n8n
    environment:
      - N8N_BASIC_AUTH_ACTIVE=true
      - N8N_BASIC_AUTH_USER=admin
      - N8N_BASIC_AUTH_PASSWORD=yourpassword
    restart: unless-stopped

Tell Claude “install n8n” and it creates this file and runs docker compose up -d for you. Navigate to http://yourServerIP:5678 and you’ll see this:

CSS, HTML, IT의 무료 스톡 사진
Photo by Godfrey Atima / Pexels

At first glance it might look intimidating. But give it five minutes. You drag nodes (blocks) from the left panel onto the canvas and connect them with lines. It’s like building with LEGO.

Real Workflow #1 — Auto-Sync Dev Logs to Notion

I’m building an app called PRSM. (A non-coder building an app? Yep, I just tell AI what to do. That’s a story for another post.) Every day I write development progress in a file on GitHub. I wanted those logs copied to Notion automatically.

Doing it manually:

  1. Open GitHub
  2. Find today’s log file
  3. Copy the content
  4. Open Notion
  5. Paste into the Day Log page
  6. Add a date tag

Five minutes a day. Doesn’t sound like much, but that’s two and a half hours a month. And honestly, I forget to do it most days.

After automating with n8n:

Every night at 11 PM → Read file from GitHub → Auto-add to Notion Day Log

Three nodes. Set it up once, and it runs every night by itself. What I have to do: nothing. When I open Notion in the morning, last night’s log is neatly organized and waiting for me.

Real Workflow #2 — Auto-Monitor Blog Google Indexing

No matter how good your blog post is, if Google hasn’t indexed it, nobody can find it through search. This is especially brutal for new blogs — it’s common for posts to go unindexed for days after publishing.

Checking manually? You’d have to log into Google Search Console and inspect each URL one by one. Ten posts means ten checks.

n8n handles it:

Every 12 hours → Get list of published post URLs → Check Google indexing status → Unindexed post found? → Send Telegram alert

“Hey boss, episodes 3 and 5 still aren’t indexed on Google!” — I get alerts like this on Telegram. Then I just click “Request Indexing” in Search Console. Done.

Real Workflow #3 — Instant Alert When Server Goes Down

When you’re running multiple services on a home server, one of them can quietly die without you noticing. Once, Immich crashed after an update and I didn’t realize for over a day. That was a full day of photos not being backed up.

So I built this workflow:

Periodic check → Ping Immich → Ping OpenClaw → Ping WordPress → Any service down? → Send Telegram alert

Now when a service goes down, I get notified within minutes. After setting up this workflow, Immich actually crashed again. This time I caught it in 10 minutes and fixed it immediately. Because n8n is watching 24/7.

Real Workflow #4 — Morning Briefing Data Prep

Remember the morning briefing from Episode 5? My AI assistant sends me weather, news, gold prices, and my schedule via Telegram every morning at 7 AM.

To create that briefing, the AI needs data. Calling weather APIs, fetching exchange rates, checking the calendar — n8n handles all this data collection automatically at 6:50 AM every morning. At 7 AM, the AI picks up the data, summarizes it, and shoots it to Telegram.

My morning routine: Wake up, open Telegram, check today’s weather and news. That’s it.

Before and After Automation

Task Before After
Dev log Notion sync 5 min/day, often forgot Automatic (0 min)
Blog index check Manual search, too lazy so never did it Auto every 12h, just check alerts
Server status check Only knew when something broke Instant alert on failure
Morning briefing Manually search news Just check Telegram

Saving time is great, but the real benefit is peace of mind. “Is the server okay?”, “Did that post get indexed?”, “Did I sync the logs?” — I don’t worry about any of this anymore. n8n is watching over everything.

n8n Self-Hosting Cost Breakdown

Let’s crunch the numbers.

Item Using Zapier n8n Self-hosted
Monthly subscription $19.99 $0
Annual cost ~$240 $0
Extra electricity None Negligible (server already runs 24/7)

n8n is lightweight and barely uses any server resources. Compared to Immich or Ollama, it’s practically invisible. Since the server is already running around the clock, the additional electricity cost is effectively zero.

Tips for Beginners

It’s all great, but let me be honest about a few things to watch out for.

  • Name your workflows clearly. If you leave them as “My Workflow 1” and “New Workflow,” you won’t know what’s what once you have more than ten. Use specific names like “PRSM to Notion Sync” or “Server Health Check.”
  • Always add error notification nodes. When an API is temporarily down or a service changes, your workflow will fail silently. Connect a Telegram notification node at the end to catch errors — you’ll sleep better at night.
  • Block external access. n8n stores sensitive information like Notion tokens and GitHub tokens. Make sure to block external access with a firewall. I locked everything down with iptables back in Episode 1.

What’s Next

Now that the server runs itself with automation, it’s time to build features that are directly useful for real work.

In the next episode:

  • Auto-transcribe phone calls — hang up and the text is ready
  • AI-generated meeting notes — Google Meet and Zoom meetings summarized by AI
  • Whisper — OpenAI’s speech recognition AI, running free on your own server
  • How a single phone call becomes a work record in a manufacturing environment

A non-coder who built an AI assistant, now building an AI transcriber. Stay tuned.

This post was written by AI (Claude Code) and reviewed by a code-illiterate human.