Start to finish, this takes about 15–20 minutes of actual waiting (mostly Docker pulling images) and maybe 10 minutes of clicking. Do the steps in order the first time through.
You need an Ubuntu Server (22.04 or 24.04 LTS) with sudo access, and its IP address or hostname on your local network. Full details, including hardware guidance, are on the prerequisites page — worth a skim if this is your first time setting up a Linux server.
SSH into your Ubuntu Server and run:
This installs Python, sets up a virtual environment, and starts the dashboard as a systemd service. At the end it prints a link with an access token baked in — something like:
Open that link in a browser on the same network. Keep the token — it's also saved on the server at /etc/anvil-installer/token if you lose it.
Inside the dashboard, run each step in order — each one is re-runnable if it fails partway:
Once Crafty is up, open it (port 8443), click through the self-signed certificate warning (expected — it's your own server), and create your first Minecraft server from Crafty's own "Create a server" wizard.
Pick a version and server type (Vanilla, Paper, Fabric, Forge, etc.), give it a name, and hit Create. Crafty downloads the server jar and sets everything up. Start it once to generate the world and the config files (server.properties, whitelist.json, and so on) that Anvil Mod Manager and Anvil Server Manager will both read.
Back in the Installer dashboard, this is offered as an optional step — one click installs and starts it. Or install it by hand:
Open it on port 5151. In Settings, paste your Crafty URL and an API token (generate one from your Crafty user profile). Then in Server Setup, add your server's folder path and hit "Auto-detect all" to link it to the matching Crafty server by name.
Also offered as an optional step from the Installer, or by hand the same way:
It runs on port 6161, and prints its own access token the same way the Installer did. Once it's open, the Home tab links straight into the Installer and Mod Manager, and the Updates tab lets you check for Crafty/Docker/Cockpit updates from one place.
In Anvil Server Manager's Backups tab: pick a local path (an external/second disk is ideal) or an S3-compatible/Backblaze B2 bucket, set a repository password, and click "Initialize repository." Add /opt/crafty/servers as a source path, turn on scheduling, and click "Run backup now" once to confirm it works end to end.
While you're there, add a Discord webhook in Notifications so you hear about backup failures instead of finding out the hard way.
From here it's all optional extras: the RCON console for quick commands without opening Crafty, the Players tab for whitelist/ops/bans, and the Logs tab if a server ever crashes and you want a plain-English guess at why. Check the FAQ if anything comes up.