Documentation

Nests and eggs

Eggs describe how to install and start a game. Nests group eggs. Flutter is not a Pterodactyl fork, but it can import their egg JSON.

Nests vs eggs

  • Nest — a folder, such as Minecraft or Source. Admin → Nests.
  • Egg — Docker image, startup command, stop command, install script, and variables. Lives inside a nest.

When you create a server you pick one egg. The daemon pulls the image, runs the install script once, then starts the process with that egg’s startup command and variables.

Seeded eggs

A new panel inserts these if they are missing (idempotent):

NestEggImageUse
GenericSleepbusybox:1.36Prove install and power without a game JAR
MinecraftVanillaitzg/minecraft-server:java21Java Edition. EULA / TYPE / VERSION / MEMORY variables

Import Pterodactyl / Pelican

Admin → Nests → Eggs → Import. Paste a single egg JSON object (not an array). Flutter unwraps common wrappers (egg, attributes, exported panel payloads) and reads:

  • Name
  • Docker image (docker_image, image, or the first entry in docker_images)
  • Startup command, stop command, install script / image
  • Variables

Write your own

Admin → Nests → [nest] → New egg. You need a Docker image the node can pull, a startup command that keeps the process in the foreground, and a stop command the game understands (often stop). Install scripts run in a separate image with the server files mounted at /mnt/server.