Werk № 001Docker · Jellyfin · *arrAGPL-3.0 · free forever to compose, check & export

Your Jellyfin + *arr media server, wired right the first time.

Stapelwerk is a guided Docker stack composer that checks your stack before it ever boots — the VPN kill-switch verified by construction, no port collisions, no default secrets — and hands you a clean docker-compose.yml you can run anywhere.

Open the app View source on GitHub $ git clone — no sign-up wall for self-hosting: every feature is yours, no gates.
01The 2 a.m. mistake

The classic media-stack failure: the VPN is next to your torrent client, not around it.

A torrent client running beside a VPN container looks safe — until the tunnel drops and your real IP leaks. It's the most common wiring mistake in self-hosted media stacks, and you usually find out the hard way. Stapelwerk encodes the fix once and verifies it on every build:

It isn't advice that looks right — an LLM can type that. It's a checked, versioned, runnable artifact: the wiring rules live in code and are enforced on every single build.

02How it works

Compose from a curated catalog. Get checked as you build. Own the output.

  1. 01compose

    Pick a use case, not a blank file

    The Media Server template ships pre-wired: Jellyfin + Sonarr / Radarr / Prowlarr + qBittorrent + Gluetun, download client already confined to the tunnel. Add or swap services from a curated catalog.

  2. 02check

    Checks run while you build

    Compatibility, port collisions, required dependencies, resource budget ("does this fit my Pi 4?"), and the kill-switch check — live, with a jump-to-fix for every finding.

  3. 03launch

    Export & run anywhere

    A secret-secured docker-compose.yml plus a key-sovereign deploy.sh that runs on your machine over your SSH — or hand it to Coolify, Portainer, Dokploy or Openship. No lock-in, ever.

fig. 1 — template → checks → export, 30 s, real build
03The €29 verified deploy

A signed proof that your stack is deploy-safe — by construction.

One time, per stack: Stapelwerk generates an ed25519-signed report attesting what was actually verified in your compose — a provenance artifact you can keep, share, and check against our published public key.

  • Kill-switch confined: the download client cannot reach the network except through the VPN — no real-IP leak if the tunnel drops.
  • No datastore exposed on the host network — your Postgres / Redis / Mongo ports stay internal.
  • Datastores keep their data — stateful services have volumes; no default or empty secrets; images pinned.
  • You keep the compose and run it yourself — free forever. The €29 buys the signed proof, not a hosted deploy. We never hold your SSH keys.

* Honest scope: the report attests the configuration is safe by construction — it names exactly what was checked and marks everything else "not checked". It is not a promise about software you install later or CVEs discovered tomorrow. On local-socket deploys you can additionally run a runtime attestation that boots the stack and confirms traffic actually dies when the VPN drops.

04Price list

Patronage and one-time outcomes — not another monthly SaaS.

Pos.ItemPrice
1.0 Free foreverCompose from templates & catalog · all checks, incl. the kill-switch · export compose + deploy.sh + handoff guides. No account needed to self-host. €0 Start composing
2.0 Verified deployed25519-signed deploy-safety report · kill-switch + safety audit, attested · verifiable with our public key. €29one time, per stack Get verified
3.0 SupporterFunds independent development · your name in SUPPORTERS. A thank-you, not a feature unlock. €99per year Become a supporter

// the self-host promise: a self-hosted Stapelwerk has every feature and zero gates — signed reports included, free. Plan limits exist only on the hosted instance. That's what AGPL-3.0 open-core means here.

05FAQ

Common questions

What is Stapelwerk?
Stapelwerk is a guided Docker stack composer for self-hosters. It composes a media server stack (Jellyfin, Sonarr, Radarr, Prowlarr, qBittorrent, Gluetun), checks compatibility, ports, resources and the VPN kill-switch before deploy, and exports a clean docker-compose.yml you can run anywhere.
How does Stapelwerk verify the VPN kill-switch?
By construction: the download client runs inside the VPN container's network namespace (network_mode: service:gluetun), publishes no ports of its own and depends on the gateway. If a stack has a download client and a VPN but is not routed through it, Stapelwerk raises a hard VPN-leak error before deploy.
What does the €29 verified deploy include?
A one-time, per-stack ed25519-signed report attesting what was verified in your compose: the kill-switch confinement plus a safety audit — no datastore exposed on the host network, volumes for stateful services, no default secrets, pinned images. Verifiable with our published public key. The compose itself stays free.
06Why "Stapelwerk"?

(SHTAH-pel-verk) — Stapel is German for stack, and a Stapellauf is the moment a shipyard launches a correctly built ship. Stapelwerk is the works where your stack gets built, checked and verified — before it launches.