Overview
Pumpkin provides an official Pterodactyl egg for easy deployment and management through the Pterodactyl panel. This setup automatically builds Pumpkin from source during installation.Prerequisites
- Pterodactyl Panel installed and configured
- Node with at least 4GB RAM available
- Docker configured on the node
Installation
Step 1: Import the Egg
- Download the egg file: egg-pumpkin.json
- In your Pterodactyl admin panel, navigate to Nests
- Select or create a nest for Pumpkin
- Click Import Egg
- Upload
egg-pumpkin.json
Step 2: Configure Node Resources
Update your node’s Docker configuration to allow sufficient build resources:/etc/pterodactyl/config.yml
Step 3: Create Server
- Create a new server in Pterodactyl
- Select the Pumpkin egg
- Allocate at least 4GB RAM for installation
- Assign a port (default: 25565)
- Click Create Server
Step 4: Initial Build
The first startup will:- Clone the Pumpkin repository
- Build from source (this takes several minutes)
- Generate default configuration files
- Start the server
Egg Configuration
Docker Image
The egg uses the official Pterodactyl Alpine image:Startup Command
Installation Script
The egg runs this script during installation:Environment Variables
RUST_BACKTRACE
Description: Controls error backtrace verbosity Options:0- No backtrace1- Minimal backtrace (default)full- Detailed backtrace with all frames
1
User Editable: Yes
BUILD_RELEASE
Description: Build type (release or debug) Options:1ortrue- Release build (optimized, recommended)0orfalse- Debug build (larger, slower, more diagnostics)
1
Scope: Installation only
User Editable: Yes
Release builds are significantly smaller and faster. Use debug builds only for development.
GIT_BRANCH
Description: Git branch to clone Default: Empty (uses default branch) Scope: Installation only User Editable: Yes Example:GIT_COMMIT
Description: Specific git commit to checkout Format: 7-40 character commit hash Default: Empty (uses latest) Scope: Installation only User Editable: Yes Example:GIT_URL
Description: Git repository URL Default:https://github.com/Pumpkin-MC/Pumpkin.git
Scope: Installation only
User Editable: Yes
CARGO_BUILD_JOBS
Description: Number of parallel build jobs Default:default (uses all available cores)
Scope: Installation only
User Editable: Yes
Options:
default- Maximum available threads1- Single-threaded (use if experiencing deadlocks)2,3, etc. - Specific number of threads
Configuration File Management
The egg automatically manages these configuration files:config/configuration.toml
config/features.toml
Server Management
Starting the Server
Click Start in the Pterodactyl console.Stopping the Server
The egg uses thestop command:
Startup Detection
The egg detects successful startup by monitoring for:Reinstalling
To rebuild from source:- Go to Settings tab
- Click Reinstall Server
- Confirm the reinstall
Resource Allocation
Minimum Requirements
- RAM: 2GB runtime, 4GB for installation
- CPU: 2 cores minimum
- Disk: 1GB for server + world size
Recommended for Production
- RAM: 4GB+
- CPU: 4+ cores
- Disk: 5GB+ depending on world size
Memory Settings
Adjust in server settings:Port Configuration
Pterodactyl automatically assigns and configures ports:- Primary Allocation: Java Edition port (default 25565)
- Additional Allocations: Can be added for RCON, Query, etc.
Updating Pumpkin
Update to Latest Master
- Stop the server
- Reinstall the server (Settings → Reinstall)
- Wait for build to complete
- Start the server
Update to Specific Version
- Stop the server
- Set
GIT_BRANCHorGIT_COMMITin Startup tab - Reinstall the server
- Start the server
Troubleshooting
Build Fails with Out of Memory
Increase installer memory limits:Build Deadlock
ReduceCARGO_BUILD_JOBS:
- Go to Startup tab
- Set Cargo build jobs to
1 - Reinstall the server
Server Won’t Start
Check the console for errors:- Look for
RUST_BACKTRACEoutput - Verify port is not in use
- Check configuration files in
config/directory
Configuration Not Updating
Manually edit files through Pterodactyl file manager:- Navigate to Files tab
- Edit
config/configuration.tomlorconfig/features.toml - Save and restart server
Port Already Allocated
- Go to Network tab
- Change primary allocation
- Restart server (egg auto-updates config)
Performance Tips
- Allocate at least 4GB RAM for production servers
- Use release builds (BUILD_RELEASE=1)
- Enable CPU pinning in Pterodactyl for better performance
- See Performance Guide for tuning tips
Security
File Permissions
Pterodactyl manages permissions automatically. Server runs as the container user.Network Security
- Use Pterodactyl’s firewall features
- Limit port exposure to necessary allocations
- Enable Velocity/Bungeecord forwarding if using proxies
Next Steps
- Configuration Guide - Customize server settings
- Performance Tuning - Optimize for your workload
- Docker Deployment - Alternative deployment method
