Community GuidesEgg Creation

Docker Images

Choose the Docker images an egg's servers run in.

Introduction

Every server runs in a Docker container, and the egg's image decides what it has installed, such as Java for a Minecraft server or Python for a bot. Choose an image with everything the server needs to run; tools needed only for installing belong in the install script's container.

Official Images

Pterodactyl publishes images, called yolks, at ghcr.io/pterodactyl/yolks. The source is in the pterodactyl/yolks repository.

TagContents
debian, alpineA general-purpose Debian or Alpine system.
java_8 to java_25Java, for Minecraft and other Java programs. Tags ending in j9, such as java_17j9, use the OpenJ9 runtime.
nodejs_12 to nodejs_20Node.js.
python_3.7 to python_3.11Python.
go_1.14 to go_1.26, go_latestGo.

For example, this image runs Java 21:

ghcr.io/pterodactyl/yolks:java_21

The community maintains more images at ghcr.io/ptero-eggs/yolks (Ptero-Eggs/yolks), including newer language versions, .NET, Wine, and databases. The eggs in the catalog often use them.

To build your own image, see Creating a Custom Image.

Offering Several Images

To offer several images, enter one per line in the egg's Docker Images field. To name an image, put the name and a | before it:

Java 17|ghcr.io/pterodactyl/yolks:java_17
Java 21|ghcr.io/pterodactyl/yolks:java_21

A line without a name shows the image itself.

When you create a server, you pick one of the egg's images or enter another. Users can switch between the egg's images on their server's Startup page; the change applies on the next start. If the server's image is not one of the egg's, users cannot change it.

Local Images

Wings downloads an egg's image the first time a server needs it. For an image you built on the node that is not in any registry, put a ~ before its name, such as ~my-game-server:latest. Wings then uses the local image and does not try to download it.

Edit on GitHub

Last updated on

On this page