{"repo":"BrennanWoodbury/factorio-stack-manager","free":true,"listed":false,"github":"https://github.com/BrennanWoodbury/factorio-stack-manager","clone":"git clone https://github.com/BrennanWoodbury/factorio-stack-manager.git","description":"Self-hosted manager for multiple Factorio dedicated servers on one host behind NAT, using DNS SRV records for per-subdomain routing","language":"TypeScript","stars":13,"topics":[],"license":"MIT","category":"self-hosted-apps","readme_excerpt":"Factorio Stack Manager Self-hosted web app to run many Factorio dedicated servers on one home host behind a consumer NAT router. Each server is reachable by players at its own subdomain ( factory1.mydomain.com ) with no port number to type and no reverse proxy — the routing is done entirely by DNS SRV records . - Backend: Node.js + TypeScript (Express, dockerode , node:sqlite , rcon-client ) - Frontend: React + TypeScript (Vite) - DNS/DDNS: Cloudflare REST API - Runs as a single container that manages sibling Factorio containers via the Docker socket. Already running it? UPGRADING.md covers which image tag to track, how to roll back, and what will and won't change under you. Published changes are listed in GitHub Releases, with CHANGELOG.md retained for optional curated history. Project stewardship and review requirements are documented in MAINTAINERS.md. --- How the networking works Factorio's client (v1.1.67+) resolves connections via DNS SRV records. When a player enters factory1.mydomain.com , the client looks up: and connects to host.mydomain.com: over UDP. So: 1. One SRV record per server , created/updated/removed automatically by this app. Its target is always the single stable hostname host.mydomain.com (SRV targets must be a hostname, never an IP or CNAME), and its port is that server's unique game port. 2. One shared A record host.mydomain.com points at your current public IP. Because your home IP is dynamic, a background DDNS job keeps that one A record in sync. Ev","default_branch":null,"files":null,"tree":[],"storefront":"/r/BrennanWoodbury","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/BrennanWoodbury/factorio-stack-manager/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}