Templates
Templates define installable games: container image, install script, startup command, variables, and defaults. Users pick a template when creating a server; everything else flows from it. Manage them under Admin → Templates.
Prerequisites
Section titled “Prerequisites”- The
template.createpermission, or full administrator access. - A node if you want to install-test the template before publishing it.
Add a template
Section titled “Add a template”From Admin → Templates:
- Select New Template. One dialog holds every field, in numbered sections: 1 — Nest (the nest that groups the template, or Skip — no nest, plus Name, Author, Version, Icon URL, and Description), 2 — Runtime images, 3 — Commands & config (startup command, stop command or signal, the optional Install script, config file paths, and Resources & ports: Ports, Allocated memory (MB), Allocated CPU cores), 4 — Variables, and 5 — Advanced features.
- Select Create template. Until the required fields are filled the footer lists what is missing and the button stays disabled. The template is then available immediately and users can create servers from it.
To bring in an existing game definition instead, select Import on the same page (importing eggs walks through the whole flow):
- From URL — paste a direct link to a Pterodactyl egg (
.json/.yaml). - From Local File — Choose file on your computer.
- Import All Pterodactyl Eggs — imports the full
pterodactyl/game-eggscollection and creates nests from the egg categories. This takes a minute or two.
Imported templates carry a primary port derived from the egg itself (its ports
array, a literal port in the egg’s config-file bindings, or a variable pinned to
one value) rather than assuming 25565. Eggs that only bind
{{server.build.default.port}} pin nothing, because the panel allocates the
real port per server — check Ports before publishing those.
Verify before you publish
Section titled “Verify before you publish”A template you have not installed from scratch is untested. Create a real server from it, install, start, join, stop, back up, and restore. Only then offer it to users.
Maintain templates
Section titled “Maintain templates”- Edit on a template card opens the same form; Save changes applies immediately to future servers.
- Pin versions in install scripts where stability matters;
latestmoves under you on the worst possible day. - Keep variables minimal. Every variable is support surface — expose what users actually change, hide the rest in sane defaults.
- Note behavioural changes. Existing servers usually keep their old effective config until they are reinstalled, so say whether users must act.
- Retire broken templates. Select them and use the bulk delete action; a template in use by an existing server cannot be deleted.
Nests group templates (Minecraft, Source, and so on). Keep the nest list short and obvious — it is the first choice users make, and twenty near-identical entries help nobody.
Select Nests on the Templates page to open Manage nests, then New nest; give it a Name, optional Description, and optional Icon URL. Deleting a nest leaves its templates ungrouped rather than deleting them.
Related
Section titled “Related”- Importing Pterodactyl eggs and nests: importing eggs.
- What users see when they create a server: creating a server.
- Migrating whole servers: migration.
