HomeStart / GuidesAnleitungen / Self-hosting Foundry VTT on a VPS/ Foundry VTT selbst hosten auf einem VPS

Self-hosting Foundry Virtual Tabletop on a VPS: your own licence key, Caddy HTTPS, and the NAT port catchFoundry Virtual Tabletop selbst hosten auf einem VPS: dein eigener Lizenzschlüssel, Caddy-HTTPS und die NAT-Port-Falle

Foundry Virtual Tabletop is built to be self-hosted — the developers sell you a licence and a Node.js package, not a subscription to their own servers — which means the entire job here is running one small process correctly, keeping port 30000 off the open internet, and not losing the folder that holds every world you've built. None of that is hard. All of it is easy to get almost right and then wonder why a player's dice roll never arrives.Foundry Virtual Tabletop ist von Grund auf fürs Selbsthosten gebaut – die Entwickler verkaufen dir eine Lizenz und ein Node.js-Paket, kein Abo für ihre eigenen Server –, weshalb die ganze Aufgabe hier darin besteht, einen kleinen Prozess korrekt laufen zu lassen, Port 30000 vom offenen Internet fernzuhalten und den Ordner nicht zu verlieren, der jede Welt enthält, die du gebaut hast. Nichts davon ist schwer. Alles davon lässt sich leicht fast richtig machen – und dann fragst du dich, warum der Würfelwurf eines Spielers nie ankommt.

What you need first: your own Foundry licence keyWas du zuerst brauchst: deinen eigenen Foundry-Lizenzschlüssel

Foundry is a one-time purchase from foundryvtt.com, tied to your own account there, and it is the one piece nothing here replaces. overnight.host does not sell, include, or provide a Foundry licence key — this guide is about the VPS underneath it, not the software itself. Buy the licence from Foundry directly, sign in to your account's Purchased Licenses page, and keep the key next to whatever else you consider account-critical; you'll need that same account again for every future download, not just the first one.Foundry ist ein einmaliger Kauf bei foundryvtt.com, gebunden an dein eigenes Konto dort, und das ist das eine Stück, das hier durch nichts ersetzt wird. overnight.host verkauft, liefert oder stellt keinen Foundry-Lizenzschlüssel bereit – diese Anleitung dreht sich um den VPS darunter, nicht um die Software selbst. Kaufe die Lizenz direkt bei Foundry, melde dich auf der Purchased Licenses-Seite deines Kontos an und bewahre den Schlüssel dort auf, wo du sonst alles Kontokritische aufbewahrst; du brauchst genau dieses Konto für jeden zukünftigen Download wieder, nicht nur für den ersten.

Node.js and the Foundry server packageNode.js und das Foundry-Server-Paket

Foundry ships as a plain Node.js application, and Ubuntu 24.04's own package archive lags behind what current Foundry releases expect, so pull Node from NodeSource's repository instead of apt install nodejs:Foundry kommt als reine Node.js-Anwendung, und das eigene Paketarchiv von Ubuntu 24.04 hinkt dem hinterher, was aktuelle Foundry-Releases erwarten – zieh Node deshalb aus dem Repository von NodeSource statt mit apt install nodejs:

curl -fsSL https://deb.nodesource.com/setup_lts.x -o nodesource-setup.sh
less nodesource-setup.sh
sudo bash nodesource-setup.sh
sudo apt install -y nodejs
node -v

Read the script before you run it, the same rule as any install script. Foundry's own release notes state the Node.js major version a given Foundry version needs — check that page for the release you're installing rather than assuming the LTS you just installed is automatically new enough.Lies das Skript, bevor du es ausführst – dieselbe Regel wie bei jedem Install-Skript. Foundrys eigene Release Notes nennen die Node.js-Hauptversion, die eine bestimmte Foundry-Version braucht – prüfe diese Seite für das Release, das du installierst, statt anzunehmen, dass die LTS-Version, die du gerade installiert hast, automatisch neu genug ist.

From your Purchased Licenses page, the Node.js download button gives you a timed URL for foundryvtt-<version>.zip — it expires after a short window, so kick off the download promptly rather than copying the link for later. Minimal Ubuntu 24.04 images skip unzip, and Linux globs are case-sensitive, so install it and check the filename that actually landed first:Auf deiner Purchased Licenses-Seite liefert dir der Node.js-Download-Button eine zeitlich begrenzte URL für foundryvtt-<version>.zip – sie läuft nach einem kurzen Fenster ab, starte den Download also sofort, statt den Link für später zu kopieren. Minimale Ubuntu-24.04-Images lassen unzip weg, und Linux-Globs unterscheiden Groß- und Kleinschreibung – installiere es also und prüfe zuerst den tatsächlich gelandeten Dateinamen:

sudo apt install -y unzip
ls ~/*.zip
mkdir -p ~/foundry/resources ~/foundry/data
cd ~/foundry/resources
unzip ~/foundryvtt-*.zip

Keep those two directories separate on purpose. resources is the application code you just unzipped and will overwrite on every upgrade; data is everything you actually own — worlds, modules, assets — and an upgrade must never touch it.Halte diese beiden Verzeichnisse absichtlich getrennt. resources ist der Anwendungscode, den du gerade entpackt hast und der bei jedem Upgrade überschrieben wird; data ist alles, was dir tatsächlich gehört – Welten, Module, Assets –, und ein Upgrade darf das niemals anfassen.

First run and the Data directoryErster Start und das Data-Verzeichnis

Start it by hand once, from inside resources, pointing --dataPath at the folder you made for it:Starte es einmal von Hand, aus resources heraus, und zeig mit --dataPath auf den Ordner, den du dafür angelegt hast:

node main.js --dataPath=/home/youruser/foundry/data --port=30000

The first request to port 30000 lands on Foundry's Setup screen rather than a running game — that's where you enter your licence key, and where a fresh Config/options.json gets written under your data directory to hold the settings from here on. Everything that makes a world a world lives under data/Data: worlds/ for your campaigns, modules/ and systems/ for anything you install, and whatever maps, tokens, and audio you keep yourself — an assets/ folder is a common convention, not something Foundry manages. That one folder is the entire application state — the Node code in resources is disposable and gets replaced on every upgrade.Die erste Anfrage an Port 30000 landet auf Foundrys Setup-Bildschirm statt auf einem laufenden Spiel – dort gibst du deinen Lizenzschlüssel ein, und dort wird eine frische Config/options.json unter deinem Datenverzeichnis angelegt, die von da an die Einstellungen hält. Alles, was eine Welt zu einer Welt macht, lebt unter data/Data: worlds/ für deine Kampagnen, modules/ und systems/ für alles, was du installierst, und was immer du selbst an Karten, Token und Audio dort ablegst – ein assets/-Ordner ist eine übliche Konvention, kein von Foundry verwaltetes Verzeichnis. Dieser eine Ordner ist der gesamte Anwendungszustand – der Node-Code in resources ist Wegwerfware und wird bei jedem Upgrade ersetzt.

HTTPS with Caddy — and the websocket Foundry needsHTTPS mit Caddy – und das WebSocket, das Foundry braucht

Foundry's whole play experience — dice rolls, token drags, chat — runs over a persistent WebSocket, not periodic page loads, so the reverse proxy in front of it has to pass that upgrade through cleanly. Caddy does, with no extra configuration:Foundrys gesamtes Spielerlebnis – Würfelwürfe, Token-Ziehen, Chat – läuft über ein dauerhaftes WebSocket, nicht über periodische Seitenaufrufe, weshalb der Reverse-Proxy davor dieses Upgrade sauber durchreichen muss. Caddy tut das, ganz ohne zusätzliche Konfiguration:

foundry.example.com {
    reverse_proxy 127.0.0.1:30000
}

Point the domain's A record at the VPS and let it propagate before Caddy tries to get a certificate. Neither --dataPath nor --port restricts which interface Foundry listens on — left alone, Node's server binds every interface, so a box with a public IP serves plain HTTP straight off 30000, Caddy or not. Fix it with a setting, not an assumption: on the Setup screen's Configuration tab, set Local Hostname to 127.0.0.1 and restart. Back it with the firewall too — sudo ufw status first (a fresh install ships inactive), then:Richte den A-Record der Domain auf den VPS und lass ihn sich verbreiten, bevor Caddy versucht, ein Zertifikat zu holen. Weder --dataPath noch --port schränken ein, auf welchem Interface Foundry lauscht – unangetastet bindet Nodes Server an jedes Interface, sodass eine Box mit öffentlicher IP direkt auf 30000 blankes HTTP ausliefert, Caddy hin oder her. Behebe das mit einer Einstellung, nicht mit einer Annahme: Setze auf dem Configuration-Tab des Setup-Bildschirms Local Hostname auf 127.0.0.1 und starte neu. Sichere es zusätzlich über die Firewall ab – zuerst sudo ufw status (eine frische Installation liefert sie inaktiv aus), dann:

sudo ufw deny 30000/tcp

Only then does 30000 genuinely need no firewall or NAT hole opened for it.Erst dann braucht 30000 wirklich kein Firewall- oder NAT-Loch mehr, das für ihn geöffnet wird.

One more setting on that same tab matters as much as the Caddyfile: tell Foundry it's sitting behind a proxy — turn on Proxy SSL and set Proxy Port to 443. Skip this and Foundry builds its own asset and WebSocket URLs assuming plain HTTP on the port it's actually listening on, which is exactly the kind of thing that looks fine on the login screen and then quietly drops the connection the moment a player tries to move a token.Eine weitere Einstellung auf demselben Tab ist genauso wichtig wie die Caddyfile: Sag Foundry, dass es hinter einem Proxy sitzt – schalte Proxy SSL ein und setze Proxy Port auf 443. Überspringst du das, baut Foundry seine eigenen Asset- und WebSocket-URLs unter der Annahme von blankem HTTP auf dem Port, auf dem es tatsächlich lauscht – genau die Art von Sache, die auf dem Login-Bildschirm völlig in Ordnung aussieht und dann still die Verbindung fallen lässt, sobald ein Spieler versucht, einen Token zu bewegen.

Read this before you buy: the NAT port-forward catchLies das, bevor du kaufst: die NAT-Port-Forward-Falle

Port 30000 itself never needs to be reachable from the internet — it stays on loopback, behind Caddy, for the reasons above. What does need to be reachable is 80 and 443, because that's what Caddy answers on and what it needs open to complete the ACME certificate challenge. Some overnight.host plans hand you 80 and 443 forwarded by default, some don't — check what your plan actually forwards before you point DNS anywhere, at NAT IPv4, ports and forwarding. If 443 isn't reachable, Caddy has nothing to answer the challenge on and sits there retrying instead of serving your table. A dedicated IPv4, where those ports are genuinely yours, is arranged by e-mail on our plans; NAT IPv4 vs a dedicated IP covers the trade-off in more detail.Port 30000 selbst muss nie aus dem Internet erreichbar sein – er bleibt aus den oben genannten Gründen auf Loopback, hinter Caddy. Was erreichbar sein muss, sind 80 und 443, weil Caddy darüber antwortet und sie offen braucht, um die ACME-Zertifikats-Challenge abzuschließen. Manche overnight.host-Pläne leiten 80 und 443 standardmäßig weiter, manche nicht – prüfe, was dein Plan tatsächlich weiterleitet, bevor du DNS irgendwohin zeigen lässt, bei NAT IPv4, Ports und Weiterleitung. Ist 443 nicht erreichbar, hat Caddy nichts, worauf es die Challenge beantworten kann, und bleibt stattdessen beim Wiederholen hängen, statt deinen Tisch auszuliefern. Eine dedizierte IPv4, bei der diese Ports wirklich dir gehören, wird bei unseren Plänen per E-Mail arrangiert; NAT IPv4 vs. dedizierte IP behandelt den Trade-off ausführlicher.

The admin key, and inviting playersDer Admin-Key, und Spieler einladen

The first time you reach the Setup screen, Foundry asks you to set an Application Administrator Access Key — a password for the Setup screen itself, separate from anything a player ever sees. Guard it like any other root-adjacent credential; anyone with it can create, delete, or reconfigure worlds on your box.Beim ersten Erreichen des Setup-Bildschirms bittet Foundry dich, einen Application Administrator Access Key zu setzen – ein Passwort für den Setup-Bildschirm selbst, getrennt von allem, was ein Spieler jemals zu sehen bekommt. Behandle ihn wie jedes andere root-nahe Credential; wer ihn hat, kann Welten auf deiner Box erstellen, löschen oder umkonfigurieren.

Once a world is running, don't hand players your admin key or your VPS's raw hostname-and-port. Foundry's Setup screen has an Invitations tab that generates a shareable invite link (and a short code) scoped to your external address, so a player joins through that instead. Inside the world itself, each player still gets their own user assigned by you, with permissions and a password set per-user under Game Settings → Configure Players — the admin key never needs to leave your hands for a normal session to happen.Sobald eine Welt läuft, gib Spielern nicht deinen Admin-Key oder die rohe Hostname-und-Port-Kombination deines VPS. Foundrys Setup-Bildschirm hat einen Invitations-Tab, der einen teilbaren Einladungslink (und einen kurzen Code) erzeugt, der auf deine externe Adresse zugeschnitten ist – ein Spieler tritt stattdessen darüber bei. Innerhalb der Welt selbst bekommt jeder Spieler trotzdem einen eigenen, von dir zugewiesenen Nutzer, mit Berechtigungen und einem Passwort, das du pro Nutzer unter Game Settings → Configure Players setzt – der Admin-Key muss für eine normale Session nie deine Hände verlassen.

Running Foundry as a systemd serviceFoundry als systemd-Dienst betreiben

Run it as a dedicated non-root user, not root and not yourself if you can avoid it:Betreibe es als dedizierten Non-Root-User, nicht als Root und wenn möglich auch nicht als du selbst:

sudo useradd --system --create-home --shell /usr/sbin/nologin foundry
sudo mv ~/foundry /home/foundry/
sudo chown -R foundry:foundry /home/foundry/foundry
[Unit]
Description=Foundry Virtual Tabletop
After=network.target

[Service]
Type=simple
User=foundry
WorkingDirectory=/home/foundry/foundry/resources
ExecStart=/usr/bin/node main.js --dataPath=/home/foundry/foundry/data --port=30000
Restart=on-failure
RestartSec=5

[Install]
WantedBy=multi-user.target

Save that as /etc/systemd/system/foundry.service, then:Speichere das als /etc/systemd/system/foundry.service und dann:

sudo systemctl daemon-reload
sudo systemctl enable --now foundry
systemctl status foundry

sudo journalctl -u foundry -f shows the live log — useful the first time a module fails to load or the port turns out to already be in use.sudo journalctl -u foundry -f zeigt das Live-Log – nützlich, wenn beim ersten Mal ein Modul nicht lädt oder sich herausstellt, dass der Port schon belegt ist.

Backups and upgradesBackups und Upgrades

The whole point of keeping resources and data apart is that a backup only ever needs the second one. Stop the service for a minute before you copy it — Foundry writes to files under data/Data while a world is active, and a tar taken mid-write is the kind of thing you only discover is broken when you need it:Der ganze Sinn, resources und data getrennt zu halten, ist, dass ein Backup immer nur das zweite braucht. Stoppe den Dienst für eine Minute, bevor du es kopierst – Foundry schreibt Dateien unter data/Data, während eine Welt aktiv ist, und ein Tar, das mitten im Schreibvorgang entsteht, ist genau die Art Ding, bei der du erst merkst, dass es kaputt ist, wenn du es brauchst:

sudo systemctl stop foundry
sudo tar -czf foundry-data-$(date +%F).tar.gz -C /home/foundry/foundry data
sudo systemctl start foundry

Copy that archive off the VPS — a backup on the same disk as the thing it protects is not a backup — the same rule as any other service; back up your VPS covers what that actually looks like in practice.Kopiere dieses Archiv vom VPS herunter – ein Backup auf derselben Platte wie das, was es schützen soll, ist kein Backup – dieselbe Regel wie bei jedem anderen Dienst; Backup deines VPS beschreibt, wie das in der Praxis tatsächlich aussieht.

Upgrading means the same download step as day one: a fresh timed URL from your Purchased Licenses page, unzipped over resources only. Confirm the filename first — ls ~/*.zip.Ein Upgrade bedeutet denselben Download-Schritt wie am ersten Tag: eine frische, zeitlich begrenzte URL von deiner Purchased Licenses-Seite, entpackt nur über resources. Bestätige zuerst den Dateinamen – ls ~/*.zip.

sudo systemctl stop foundry
sudo rm -rf /home/foundry/foundry/resources/*
cd /home/foundry/foundry/resources
sudo -u foundry unzip ~/foundryvtt-<new-version>.zip
sudo systemctl start foundry

Take the backup above immediately before you upgrade, not after a world fails to load — Foundry does run its own data migrations on first launch of a new version, and there's no supported way to hand a migrated world back to an older Foundry release.Mach das Backup von oben unmittelbar vor dem Upgrade, nicht nachdem eine Welt nicht mehr lädt – Foundry führt beim ersten Start einer neuen Version tatsächlich eigene Daten-Migrationen aus, und es gibt keinen unterstützten Weg, eine migrierte Welt an ein älteres Foundry-Release zurückzugeben.

Sizing: Basic vs Standard for a real tableDimensionierung: Basic vs. Standard für einen echten Tisch

Foundry itself is a light Node process — a table of four to six with a modest set of modules idles well under a gigabyte of RAM, and the CPU only spikes briefly when a big scene loads or a lot of tokens move at once. The number that actually grows is disk, and it grows because of assets, not code: high-resolution battle maps, token art packs, and music libraries from a handful of premium modules routinely run into the hundreds of megabytes each, and a GM who collects modules for a few years without pruning can sit on many gigabytes without ever installing anything unusual.Foundry selbst ist ein leichter Node-Prozess – ein Tisch mit vier bis sechs Spielern und einer überschaubaren Modul-Auswahl läuft im Leerlauf deutlich unter einem Gigabyte RAM, und die CPU schlägt nur kurz aus, wenn eine große Szene lädt oder viele Token gleichzeitig bewegt werden. Die Zahl, die tatsächlich wächst, ist der Speicherplatz, und sie wächst wegen der Assets, nicht wegen des Codes: hochauflösende Kampfkarten, Token-Art-Pakete und Musikbibliotheken aus einer Handvoll Premium-Modulen kommen routinemäßig auf jeweils mehrere hundert Megabyte, und ein Spielleiter, der über ein paar Jahre Module sammelt, ohne auszumisten, kann auf vielen Gigabyte sitzen, ohne je etwas Ungewöhnliches installiert zu haben.

The 2 GiB Basic tier (2 vCPU, 50 GB disk) is the honest floor for a real weekly session with four to six players and a normal module list — it is not undersized for that. Move to the 4 GiB Standard tier (2 vCPU, 80 GB disk) once you're running asset-heavy modules, building large hand-crafted scenes, or running more than one active world for more than one group off the same box, and treat storage as the thing to watch either way: if a module collection outgrows the disk before it outgrows the RAM, that's normal for this workload, and add extra storage to your VPS covers adding room without a full rebuild.Der 2-GiB-Basic-Tarif (2 vCPU, 50 GB Speicher) ist die ehrliche Untergrenze für eine echte wöchentliche Session mit vier bis sechs Spielern und einer normalen Modulliste – dafür ist er nicht unterdimensioniert. Wechsle zum 4-GiB-Standard-Tarif (2 vCPU, 80 GB Speicher), sobald du asset-lastige Module betreibst, große handgebaute Szenen baust oder mehr als eine aktive Welt für mehr als eine Gruppe von derselben Box aus betreibst, und behalte so oder so den Speicherplatz im Auge: Wenn eine Modulsammlung die Platte sprengt, bevor sie den RAM sprengt, ist das normal für diese Art von Workload, und zusätzlichen Speicher zu deinem VPS hinzufügen beschreibt, wie du Platz schaffst, ohne komplett neu aufzusetzen.

On overnight.hostBei overnight.host

Full disclosure: this is what we sell. The 2 GiB Basic tier runs a group of four to six players with modest module use comfortably; heavy modules, large hand-built scene maps, or a bigger table are the reason to move up to the 4 GiB Standard, not to fight the swap.Zur vollen Transparenz: Das ist, was wir verkaufen. Der 2-GiB-Basic-Tarif betreibt eine Gruppe von vier bis sechs Spielern mit moderatem Modulgebrauch bequem; schwere Module, große handgebaute Szenenkarten oder ein größerer Tisch sind der Grund, auf den 4-GiB-Standard hochzustufen – nicht, um gegen den Swap zu kämpfen.

Linux KVM VPS — EUR 4.99 to EUR 59.99 a month, on our own single-tenant bare metal in Dallas, TX and Charlotte, NC. Full hardware virtualisation (KVM), your own kernel, full root. Six tiers, vps-starter to vps-ultra. Starter is 1 vCPU, 1 GiB RAM, 25 GB disk.Linux-KVM-VPS — 4,99 bis 59,99 EUR im Monat, auf unserer eigenen Single-Tenant-Bare-Metal-Hardware in Dallas, TX und Charlotte, NC. Vollständige Hardware-Virtualisierung (KVM), eigener Kernel, volles Root. Sechs Tarife, vps-starter bis vps-ultra. Starter hat 1 vCPU, 1 GiB RAM, 25 GB Speicher.

You order in the shop, pay by card (Stripe) or SEPA bank transfer, and your login details are e-mailed to you once the service is set up. Support is e-mail, run by one person, with no guaranteed response time. All prices are final totals under the German small-business rule (§19 UStG); no VAT is added or shown.Du bestellst im Shop, zahlst per Karte (Stripe) oder SEPA-Überweisung, und deine Zugangsdaten werden dir per E-Mail zugeschickt, sobald der Dienst eingerichtet ist. Support läuft per E-Mail, von einer einzelnen Person betrieben, ohne garantierte Reaktionszeit. Alle Preise sind Endpreise. Gemäß § 19 UStG wird keine Umsatzsteuer ausgewiesen.

Order vps-basic → · Linux KVM VPS overviewvps-basic bestellen → · Übersicht Linux-KVM-VPS

Written by the person who runs overnight.host: a small, honest hosting company on dedicated bare metal — Linux VPS, game servers, web hosting. Live status at up.overnight.host.Geschrieben von der Person, die overnight.host betreibt: ein kleines, ehrliches Hosting-Unternehmen auf dedizierter Bare-Metal-Hardware — Linux-VPS, Gameserver, Webhosting. Live-Status unter up.overnight.host.

Technical guidance is informational. Plans, specifications and final prices are listed in the shop and can be ordered directly; VPS, game server, web hosting, one-click app and automation plans are provisioned automatically after payment. Custom configurations are still arranged by e-mail.Technische Hinweise dienen der Information. Pläne, Spezifikationen und Endpreise stehen im Shop und können direkt bestellt werden; VPS-, Gameserver-, Webhosting-, One-Click-App- und Automatisierungs-Pläne werden nach der Zahlung automatisch bereitgestellt. Sonderkonfigurationen werden weiterhin per E-Mail vereinbart.

FAQFAQ

Does overnight.host sell or include the Foundry licence?Verkauft oder liefert overnight.host die Foundry-Lizenz mit?

No. Foundry Virtual Tabletop is a one-time purchase from foundryvtt.com, tied to your own account there. This guide covers the Linux VPS and the Node.js process that runs the software you already bought — not the licence itself, which is between you and the Foundry developers.Nein. Foundry Virtual Tabletop ist ein einmaliger Kauf bei foundryvtt.com, gebunden an dein eigenes Konto dort. Diese Anleitung behandelt den Linux-VPS und den Node.js-Prozess, der die Software ausführt, die du bereits gekauft hast – nicht die Lizenz selbst, die zwischen dir und den Foundry-Entwicklern geregelt wird.

Can I run more than one world on the same box?Kann ich mehr als eine Welt auf derselben Box betreiben?

Yes, in the sense that Foundry's Setup screen lists every world under your data directory and lets you launch any one of them — but one running node main.js process serves one active world at a time. A second group at the same time needs a second process on a second port, behind its own Caddy site block, or its own subdomain.Ja, in dem Sinne, dass Foundrys Setup-Bildschirm jede Welt unter deinem Datenverzeichnis auflistet und dich jede davon starten lässt – aber ein laufender node main.js-Prozess bedient immer nur eine aktive Welt gleichzeitig. Eine zweite Gruppe zur gleichen Zeit braucht einen zweiten Prozess auf einem zweiten Port, hinter einem eigenen Caddy-Site-Block oder auf einer eigenen Subdomain.

Do I need a dedicated IPv4 for this?Brauche ich dafür eine dedizierte IPv4?

No. With Local Hostname set to 127.0.0.1 and ufw deny 30000/tcp in place, port 30000 never needs to reach the internet, so the only ports that do are 80 and 443 for HTTPS — and whether those are forwarded by default depends on the plan, which is exactly why it's worth checking first. A dedicated IPv4 only matters if you want those ports guaranteed yours outright; on our plans that's arranged by e-mail.Nein. Mit Local Hostname auf 127.0.0.1 und ufw deny 30000/tcp muss Port 30000 nie das Internet erreichen, sodass nur 80 und 443 für HTTPS erreichbar sein müssen – und ob die standardmäßig weitergeleitet sind, hängt vom Tarif ab, weshalb es sich lohnt, vorher nachzuschauen. Eine dedizierte IPv4 ist nur relevant, wenn du diese Ports garantiert exklusiv dir gehören lassen willst; bei unseren Plänen wird das per E-Mail arrangiert.

I set everything up and players connect but the game freezes on load — what did I miss?Ich habe alles eingerichtet, Spieler verbinden sich, aber das Spiel friert beim Laden ein – was habe ich übersehen?

Almost always the Proxy SSL and Proxy Port settings in the Configuration tab. Without them, Foundry hands the browser WebSocket and asset URLs built for plain HTTP on port 30000 instead of HTTPS through Caddy, and the client silently stalls trying to reach an address that was never actually reachable from outside the box.Fast immer die Einstellungen Proxy SSL und Proxy Port im Configuration-Tab. Ohne sie gibt Foundry dem Browser WebSocket- und Asset-URLs, die für blankes HTTP auf Port 30000 gebaut sind, statt für HTTPS über Caddy, und der Client hängt still fest beim Versuch, eine Adresse zu erreichen, die von außerhalb der Box nie tatsächlich erreichbar war.

What happens if I lose the data directory without a backup?Was passiert, wenn ich das Datenverzeichnis ohne Backup verliere?

Every world, every module you installed into it, and every scene you built are gone — the licence key itself is safe, since that lives on your Foundry account and not on the VPS, but re-downloading Foundry gets you an empty install, not your campaigns back. That's the entire reason the backup step above takes one command and belongs on day one, not after the first real loss.Jede Welt, jedes Modul, das du hineininstalliert hast, und jede Szene, die du gebaut hast, sind weg – der Lizenzschlüssel selbst ist sicher, weil er auf deinem Foundry-Konto liegt und nicht auf dem VPS, aber ein erneuter Foundry-Download gibt dir eine leere Installation, nicht deine Kampagnen zurück. Genau deshalb braucht der Backup-Schritt von oben nur einen Befehl und gehört an Tag eins, nicht nach dem ersten echten Verlust.

Ready to order?Bereit zu bestellen?

Prices are final totals; no VAT is shown (§19 UStG). Need something the shop does not list? Email us for a written offer.Alle Preise sind Endpreise ohne ausgewiesene USt. (§19 UStG). Du brauchst etwas, das nicht im Shop steht? Schreib uns für ein schriftliches Angebot.

Order now →Jetzt bestellen → Request a custom configIndividuelle Konfiguration anfragen