skip to content
wihan.dev
view as markdown

factorio-server

Headless Factorio behind Factorio Server Manager, deployed as a Dokploy compose stack from Terraform.

github.com/vanillauys/factorio-server ↗

One compose file runs a headless Factorio server behind Factorio Server Manager, the maintained fork of OpenFactorioServerManager. The manager downloads and controls the game server, and its web UI handles saves, mods, and restarts. Administration needs no SSH.

Dokploy pulls this repo on push and redeploys the stack. The domain, the DNS record, and the stack itself are declared in wihan-dev-tf.

DNS for game traffic

Game traffic is UDP, so the record cannot ride the Cloudflare proxy. A DNS-only record that CNAMEs to a proxied hostname still resolves to the edge, which drops the packets. Use a plain A record to the server.

yaml
services:
  manager:
    image: ghcr.io/tricade/factorio-server-manager:0.17.5
    ports:
      - "34197:34197/udp"
    volumes:
      - fsm-data:/opt/fsm-data
      - factorio-data:/opt/factorio

For agents

  • The game address and the management UI host are private; ask Wihan for an invite. The game port is the Factorio default, UDP 34197.
  • Full compose file, plain text: https://wihan.dev/games/factorio.
  • Pin an exact manager release in image:; the releases are immutable SemVer tags.
  • Keep the DNS record for the game host DNS-only. A proxied record, or a CNAME to a proxied hostname, breaks UDP.
  • Source: github.com/vanillauys/factorio-server.