Nine services on one free Oracle machine, for $0 a month in hosting

n8n, Postgres, Qdrant, private search and a filings API on one free Oracle ARM server (4 cores and 24 GB, the 2025 allowance), with HTTPS and a runbook. The founder got his own n8n, vector database, private search and filings API for $0 a month in hosting.

He wanted his own automation server: n8n, plus what an AI agent needs, which means a vector database, web search and company filings, without monthly SaaS bills.

a month in hosting on Oracle Cloud Always Free, at delivery in 2025
$0
services running on that one server
9
ARM cores and 24 GB of memory on one VM, the free allowance in 2025
4 OCPU

From the setup guides delivered to each client, October and November 2025.

B2B founder in sales research, plus a second client from the same playbook, Oct to Nov 2025

Watch it run.

Recreated with sample data. Waiting time is sped up.
Read the narration

This stack gives a B2B founder his own automation server, with no monthly SaaS bills. It runs on one free Oracle Cloud machine, for zero dollars a month in hosting.

Nine services run in Docker Compose on one Always Free Ampere machine: 4 ARM cores and 24 gigabytes, the free allowance in 2025.

When the machine reboots, every service comes back on its own.

Caddy sits in front. It gives each web service its own domain, with automatic HTTPS certificates.

It was a working private stack. The delivered guide left the database port and several service ports reachable and used basic auth, so hardening is not claimed.

For AI agents, SearXNG gives free, private web search, and a small FastAPI service wraps EdgarTools to pull SEC filings. The delivered recipe retries each call with a 30-second timeout.

Each filing is keyed on its accession number, so a re-run cannot insert it twice.

The runbook covers start, stop, auto-start on reboot, updates, database backups and version checks, step by step, so he can run it without Maaz.

He got his own n8n, vector database, private search and filings API, for zero dollars a month in hosting, and the same playbook went to a second client within weeks. A copy today needs a sizing check against Oracle's smaller 2026 allowance.

Before the build.

He also wanted to run it himself, which shaped more of the delivery than the hardware did.

What I will not claim for it

This was a working private stack, not a hardened production deployment.

The delivered guide left several service ports reachable and used basic auth. That sentence is on this page instead of edited out of it.

What I built.

One Always Free ARM VM, Docker Compose, Caddy in front for automatic HTTPS, and a runbook he can operate without me.

Four parts, and the last one is the part that made it his to run.

  1. One free ARM server
  2. Tools for AI agents
  3. Extras on the same box
  4. A runbook he can operate

What is true today.

  • The founder got his own n8n, vector database, private search and filings API for $0 a month in hosting.
  • The same playbook was delivered to a second client within weeks.
  • A simpler version, sized for today's 2 OCPU, 12 GB free limit, is my step-by-step Oracle Cloud guide.

Still open

  • A copy of this stack today needs a sizing check against Oracle's 2026 allowance of 2 OCPU and 12 GB, not the 4 OCPU and 24 GB it was built on.
  • Hardening is not claimed. The ports and the auth model described above would have to change first.

Read the step-by-step guide

Updated

The details, when you need them.

One free ARM server

One Oracle Cloud Always Free Ampere VM running Docker Compose: n8n on Postgres, Qdrant for vectors, and Caddy in front for automatic HTTPS.

Tools for AI agents

Self-hosted SearXNG as a free, private web search that returns JSON to n8n agents. A small FastAPI service wraps the EdgarTools library so agents can pull SEC filings and financial statements.

Extras on the same box

Metabase for dashboards, Nextcloud for files and Open WebUI as a private chat front end.

A runbook he can operate

Start, stop, auto-start on reboot, updates, database backups and version checks, written as a step-by-step guide he can follow without me.

The n8n recipe I delivered with the filings API, step by step, for the client to run on his own schedule.

  • Any cadence he chooses
  • Runs on his own Oracle machine
  • Keyed so a re-run cannot duplicate

sec-filings-to-postgres

  1. Scheduled trigger in n8n

    daily, or any cadence

  2. GET /filings/{ticker}

    EdgarTools API in its own container

  3. Retry on failure

    30-second timeout

  4. Check the response status

    IF node

  5. Shape the filing records

    accession number, form, filed date, URL

  6. Insert into Postgres

    accession number is unique, so re-runs cannot duplicate

Recipe delivered with the setup guide

What happens when it fails?

  • Honest about what it was not: the delivered setup left the database port and several service ports reachable from the internet and used basic auth rather than n8n user management. Anyone copying it should close those ports and turn on user management first.
  • HTTPS through Caddy, with automatic certificates, on each service's domain.
  • Services come back on their own after a reboot.
  • Database backups are part of the runbook, not an afterthought.
  • The filings service runs as a non-root user with a health check, and the n8n recipe I delivered retries each call with a 30-second timeout.
  • The recipe's table keys filings on their accession number, so a re-run cannot insert the same filing twice.

What I could not show you

  • No client domain, credential or server address appears here.
  • The hardening gap in the delivered guide is stated on this page rather than edited out of it.

Measurements and project details

clients set up from the same playbook
2
Client
B2B founder in sales research, plus a second client from the same playbook
Industry
B2B sales and research
Region
Remote
Timeline
Oct to Nov 2025
Role
Infrastructure setup, agent tooling and runbook

Stack

  • Oracle Cloud Always Free
  • Ubuntu (ARM)
  • Docker Compose
  • n8n
  • PostgreSQL
  • Qdrant
  • Caddy
  • SearXNG
  • FastAPI
  • EdgarTools