Flytower documentation
Flytower is a web panel for running Minecraft servers on your own VPS. You install it once, then create and look after servers from the browser. You sign in with a passkey.
These pages are also in the panel itself, for the version you have installed: Help in the sidebar, the ? at the top of each page for the page you're on, and ⌘Ctrlk to search them.
Getting started
- Installing Flytower: what you need, the installer, and its options.
- Your first server: creating, starting and joining a server.
- Your account, passkeys and recovery codes: signing in, extra devices, your name and appearance, and what to do if you lose them.
- People and roles: inviting people as Admins, Operators or Viewers, for one server or all of them.
- Keyboard shortcuts: G then a letter to jump about, J and K through lists, and ? to list them.
Running servers
- Mods, plugins and datapacks: Modrinth, Hangar, Vanilla Tweaks, and your own files.
- Backups: schedules, retention, restoring, off-site copies, and past worlds.
- Addresses and DNS: giving each server its own hostname.
- Public status page: a page anyone can open, with the address, whether it's up and who's on.
- Scheduled tasks: restarts with an in-game countdown, console commands and announcements.
- Crashes: crash reports, crash loops, and servers that stop responding.
- Player stats: leaderboards for playtime, deaths, kills, distance and blocks mined, and leaving players out.
- Notifications: Discord, ntfy and JSON webhooks for crashes, failed backups, a filling disk, updates and players.
- Discord app: slash commands like
/statusand/playersin your Discord server. - Web map: a map of the world in the browser, drawn by Flytower, with players on it.
- Server YAML reference: every field of a server spec.
Looking after the machine
- Branding: your own name, colours, font, logo and favicon.
- Disk space: where the space has gone, warnings at 85% and 95%, and freeing some up.
- Updating Flytower: self-update, going back, update badges, and upgrading old installs.
- Troubleshooting: logs, SSH, and getting the panel itself back.
How it fits together
- The panel (
flytower-panel) is the web app. It runs as the unprivilegedflytoweruser and listens only on127.0.0.1:3000. Caddy puts it on HTTPS. - The agent (
flytower-agent) is a small root helper. It does a fixed list of jobs over a Unix socket: creating server users and folders, managing systemd units, installing Java, opening ports, and updating Flytower. - Each server runs as its own user (
mc-<name>) from/srv/flytower/servers/<name>, under systemd (flytower-mc@<name>), with a fixed memory limit. Its folder is an ordinary Minecraft server folder that still runs without Flytower.
Suggest a change on GitHub