Overview
Nests are categories of game server types (e.g., Minecraft, Source Engine, Voice Servers).Eggs are specific server configurations within a nest (e.g., Minecraft Java, Minecraft Bedrock, Forge, Paper). Together, they define:
- Docker images to use
- Startup commands
- Environment variables
- Installation scripts
- File configuration
Nests
What is a Nest?
A nest groups related eggs together. For example:Creating a Nest
Create nest
Click Create Nest and provide:Name (required)
- The nest category name
- Example: “Minecraft”, “Source Engine”, “Voice Servers”
- Brief explanation of what servers this nest contains
- Example: “Minecraft Java and Bedrock servers”
- Your email or organization name
- Used for credits and egg attribution
Managing Nests
Viewing Eggs Click on a nest name to see all eggs it contains. The badge shows the egg count:Eggs
What is an Egg?
An egg is a complete server configuration that defines:- Docker Image: Container image to run the server
- Startup Command: Command to start the server
- Environment Variables: Configurable settings
- Install Script: Script to install/update the server
- Configuration Files: Files to parse and modify
Creating an Egg
Egg Configuration
Basic Settings
- Specifies the container environment
- Must be available in a Docker registry
- Common registries:
ghcr.io,docker.io
- Command to start the server process
- Use
{{VARIABLE}}for environment variables - Runs inside the container
Environment Variables
Variables allow server customization without editing the egg.Configure variable
Name: Display name (e.g., “Server JAR File”)
Description: Help text for users
Environment Variable: Internal name (e.g.,
Default Value: Initial value (e.g.,
Validation Rules: Optional regex or rules (e.g.,
User Editable: Users can change this variable
Description: Help text for users
Environment Variable: Internal name (e.g.,
SERVER_JARFILE)Default Value: Initial value (e.g.,
server.jar)Validation Rules: Optional regex or rules (e.g.,
required|string)User Viewable: Users can see this variableUser Editable: Users can change this variable
Install Script
The install script runs when a server is created or reinstalled.- Container: Docker image for installation (e.g.,
ghcr.io/pterodactyl/installers:alpine) - Entrypoint: Shell to use (e.g.,
ash,bash) - Script: Installation commands
Egg Variables Reference
| Variable | Description | Example |
|---|---|---|
SERVER_MEMORY | Allocated RAM (MB) | 2048 |
SERVER_IP | Server bind address | 0.0.0.0 |
SERVER_PORT | Server listening port | 25565 |
STARTUP | Parsed startup command | Auto-generated |
P_SERVER_LOCATION | Node location | us-east |
P_SERVER_UUID | Server UUID | Auto-generated |
Stop Command
Defines how to gracefully stop the server:SIGTERM.
Exporting Eggs
Share egg configurations with others:Export
Click Export Egg to download a JSON file containing:
- All egg settings
- Environment variables
- Install script
- Docker configuration
Importing Eggs
Add pre-made eggs from the community:Find egg JSON
Download eggs from:
- Pterodactyl Community Eggs
- Other panel administrators
- Your backups
Import to nest
- Navigate to Admin > Nests
- Click on the target nest
- Click Import Egg
- Upload the JSON file
Example: Minecraft Paper Egg
Best Practices
Organizing Nests
✅ Group by game/softwareVariable Design
✅ User-friendly defaults- Set sensible defaults
- Make common settings editable
- Hide advanced variables
- Don’t make every variable user-editable
- Hide internal variables
- Limit dangerous settings
Install Scripts
✅ Robust scripts- Check for errors
- Validate downloads
- Provide progress output
Troubleshooting
Server won’t start
Check:- Docker image exists and is accessible
- Startup command syntax is correct
- Required variables are defined
- Install script completed successfully
Install script fails
Common causes:- Network connectivity issues
- Invalid download URLs
- Insufficient disk space
- Missing dependencies in container
Variables not substituting
Ensure:- Variable names match exactly (case-sensitive)
- Variables are defined in the egg
- Syntax is
{{VARIABLE}}not$VARIABLE
Related Resources
Nodes
Deploy eggs on Wings nodes
Server Management
Create servers using eggs