Install on Pterodactyl
Import the Pterodactyl egg downloaded from your space, create a server with it, then start it: the Hub's database is built in, you have nothing to provide.
Updated on Oct 4, 2026, 5:45 p.m.
On this page
In short. You import Agora's egg into your Pterodactyl panel (the file that tells the panel how to install Agora), you create a server with that egg, and you start it. You have no database to prepare: Agora provides and manages its own database inside the server, you simply leave the "Base de donnees" variable empty. The application downloads itself on the first start, against your key.
Before you start #
- A Pterodactyl panel where you are an administrator. Not sure it is Pterodactyl, or you do not have the Administration menu? Read Tell Pelican and Pterodactyl apart first. With a host that does not let you import an egg, use a Node.js server instead.
- Your license key (it starts with
AGORA-). The egg downloaded from your space already contains it. No key? The free trial is a real one: see The 14-day free trial. - The server's resources: 2 GB of memory recommended (1.5 GB minimum) and 5 GB of disk (10 GB is more comfortable), because the server runs Agora and its database. With less, the panel may stop the server in the middle of its activity.
- A port allocation: the IP address and port the panel reserves for this server. They are what you will open your site on.
- An outgoing HTTPS connection to the Internet from the server (see Requirements).
- The words panel, egg, nest, allocation and database are in the glossary; Agora's two databases are told apart in The two Agora databases.
Did you import Agora's egg a while ago? The old egg declared the "Base de donnees" variable as required: the panel refused to create a server without it. The new egg makes it optional. Import the egg again from your space before creating a new server. Servers already created with the old egg keep working as they are. <!-- À CONFIRMER : œuf tout-en-un (claude/pg-integre) ; comment réimporter sur un Pterodactyl qui a déjà l'ancien œuf (créer un second œuf puis supprimer l'ancien, ou mettre à jour l'œuf existant) : à vérifier -->
Steps #
Open the installation page of your space. On agorapanel.com, go to Install on my panel (My account → Install on my panel). Without a key, click Get my free trial key.
Download the Pterodactyl egg. Click Egg for Pterodactyl. The file
agora-egg.jsonalready contains your key: the site therefore first asks you to verify your session (see Activate or change your license key), then you click again.<!-- CAPTURE C-039 -->
Import it into Pterodactyl. In the panel, open Administration → Nests (a nest is the folder where the panel keeps its eggs), pick a nest, then click Import Egg and upload the file. <!-- À CONFIRMER : parcours exact de l'import d'œuf sous Pterodactyl (démo officielle à vérifier, WORKFLOW phase 0 point 4) -->
<!-- CAPTURE C-038 -->
Create the server. In the administration, open Servers, then Create New. Pick the node (the machine that runs the panel's servers), a free allocation, 2048 MB of memory and 10240 MB of disk, and select the nest and the Agora egg.
<!-- CAPTURE C-040 -->
Look at the server's variables. They show up at creation, then in the server's Startup tab. Their names are in French and have no accents, which is normal:
- Cle de licence (
AGORA_KEY): must hold your key. If you took the public egg without a key, paste it here; - Base de donnees (
DATABASE_URL): leave it empty. Empty means "use your built-in database"; - Canal de mise a jour and Mettre a jour au demarrage: keep the defaults (
stableand0).
<!-- CAPTURE C-041 -->
- Cle de licence (
Ignore the Databases tab. That tab of the server creates a MySQL database, which is for your game server's database, never Agora's. Do not use it here: the Hub expects PostgreSQL, and it already brings its own.
<!-- CAPTURE C-042 -->
Start the server. Click Start and follow the console. The first start takes a few minutes: Agora downloads its database (about twenty MB) then itself. Do not click Stop or Kill in the meantime. You will see the steps scroll by:
[1/6] Identité,[2/6] Licence,[3/6] Version,[4/6] Téléchargement,[5/6] Base de données,[6/6] Démarrage, then the✓ Ready in …line. <!-- À CONFIRMER : durée réelle du premier démarrage avec la base intégrée (mesure banc, BASE-INTEGREE §6) --><!-- CAPTURE C-043 -->
Open your site. In the server's Network tab, find the allocation: an IP address and a port, for example
203.0.113.20:3020(an example address: yours will be different). Puthttp://in front, in your browser:http://203.0.113.20:3020. The console also prints this address on theadresseline; if it shows a local address (10.…or192.168.…), use the one from the Network tab.<!-- CAPTURE C-044 -->
Do the setup. The screen that opens guides you through three steps: see Do the getting-started setup.
You know it worked when… #
- The console shows
✓ base PostgreSQL intégrée prête, then✓ schéma à jour, then✓ Ready in …. - Your browser shows the Mise en route (setup) screen.
http://IP:PORT/api/healthanswers"ok": trueand"db": "ok".
If it does not work #
| What you see | Likely cause | What to do |
|---|---|---|
| The panel refuses to create the server: "Base de donnees" required | You imported the old egg | Import the egg again from Install on my panel |
mémoire du serveur trop petite pour la base intégrée | The server has less than 768 MB (Agora asks for 1.5 GB minimum) | Raise the server's memory to 2 GB in the panel's administration |
pas assez de place sur le disque pour la base intégrée | Less than 400 MB free on the first start | Raise the server's disk to 5 GB or more |
aucune clé de licence | The Cle de licence variable is empty | Paste your key in the Startup tab, then restart; see License errors |
| A message about the license server being unreachable | The server has no Internet access | See License or update server unreachable |
The console shows ✓ Ready in … but the browser opens nothing | Wrong address or closed port | Take the IP and port from the Network tab, with http:// |
| The panel's console or files show an error | You may have imported Pelican's egg | Delete the egg, then import the one that matches your panel: see Tell Pelican and Pterodactyl apart |
Any other red ✗ line about the database | See Troubleshoot the Hub's built-in database |
Going further #
What you must not change #
- The startup command:
node /home/container/boot.mjs. - The variables reserved for the panel administrator: the "Hub de licences" (
AGORA_HUB, this is not your Hub but Agora's license server) and the "Site de l'amorçage" (AGORA_SITE). Also leave the "Secret d'authentification" (AUTH_SECRET) empty: Agora generates it on the first start. - Nothing to change in Wings'
config.yml(the node program that carries out the panel's orders), even for Agora's console.
Where the data lives #
/home/container/
boot.mjs the bootstrap installed by the egg
app/ the application (can be downloaded again)
app/.data/ attachments, MDT files, .sql backups
.agora/ installation identity, license lease, session secret,
and your built-in database (pg folder)The built-in database therefore lives inside the server's files: deleting the server deletes it too. Losing .agora/ makes the installation look like a new machine. The panel's file copy (server backup, archive, SFTP) is not a database backup: it copies a database while it is running, which makes it inconsistent and often unusable on restore. Only Agora's backups count: see Backups and restore.
The txAdmin tab port #
The Port de l'onglet txAdmin variable (AGORA_TXADMIN_PORT, 40121 by default) serves the Server → txAdmin tab: put in it the number of a second allocation of the server (the first one serves the site). You can ignore it if you do not use that tab: see txAdmin in Agora.
Bringing your own PostgreSQL database (advanced option) #
Never required. If you already own a PostgreSQL server reachable from the container, you can paste its address in the Base de donnees variable, in the form postgresql://user:password@host:5432/database?schema=public. It then takes priority over the built-in database, which no longer starts. A few rules:
- It is PostgreSQL, not MySQL: the panel's Databases tab does not fit.
- Create the database and its user before starting; Agora creates everything else in it.
- If the password contains special characters (
@,:,/,#…), replace them with their code (@becomes%40). 203.0.113.20is an example address: use yours.
To switch from one database to the other while keeping your data, see Move Agora to another machine. <!-- À CONFIRMER : œuf tout-en-un (claude/pg-integre), BASE-INTEGREE §5 : procédure intégrée ↔ externe non éprouvée sur le banc -->
I imported the wrong egg #
If the panel's API stops answering, you probably imported Pelican's egg. Stop the server, import the Pterodactyl egg, change the server's egg without deleting it (its built-in database lives in its files), then delete the egg imported by mistake once no server uses it any more. <!-- À CONFIRMER : changer l'œuf d'un serveur existant sous Pterodactyl (onglet Startup de l'administration) -->
Was this article helpful?
Related articles
- Tell Pelican and Pterodactyl apartThree checks, with nothing to install, to find out which of the two panels you have and therefore which Agora egg to take: the name at the bottom of the panel, the Eggs or Nests menu, the start of your API keys.
- Install on PelicanImport the Pelican egg (not the Pterodactyl one), create a server with it, then start it: the Hub's database is built in, you have nothing to provide.
- The two Agora databases: the Hub's and the game'sYour installation uses two databases: the Hub's (PostgreSQL, provided and managed by Agora) and your game server's (MySQL or MariaDB, which you already have).
- Environment variablesWhere and how to change Agora's startup settings depending on your installation route (Docker, panel, Node.js server), and the list of the ones that matter.
- Automatic installation on your panelFrom your space, connect your Pterodactyl or Pelican panel with an API key: the site reinstalls the server you pick, wiping it. Meant for a server that already has Agora's egg.
- Do the getting-started setup: key, Discord application, administratorOn the first start, every address leads to the getting-started screen: license key, Discord application, then your account becomes administrator.
- Troubleshoot the Hub's built-in databaseMemory too small, disk full, "la base intégrée n'a pas démarré": the console messages when the Hub's database, installed inside your panel server, has a problem, and the fix for each.