Agora

Installer sur un serveur Node.js d'hébergeur (agora.mjs)

Tu n'as que le panel client d'un hébergeur ordinaire ? Commande un serveur Node.js, dépose un seul fichier (agora.mjs) et ta clé : Agora installe sa base de données et tout le reste.

Mis à jour le 5 oct. 2026, 13 h 36

Sur cette page
  1. Avant de commencer
  2. Étapes
  3. Tu sais que c'est réussi quand…
  4. Si ça ne marche pas
  5. Pour aller plus loin
  6. Les autres réglages d'agora.env
  7. HTTPS et adresse publique
  8. Où sont les données
  9. Mises à jour
  10. Arrêter proprement
  11. Apporter ta propre base PostgreSQL (option avancée)

En bref. Beaucoup d'hébergeurs de jeux vendent des serveurs « Node.js » sur lesquels tu ne peux pas importer d'œuf. Pas de souci : tu commandes un de ces serveurs, tu y déposes un seul fichier, agora.mjs, et un petit fichier de réglages, agora.env, qui contient ta clé de licence. Au démarrage, Agora télécharge et installe tout seul sa base de données et lui-même : tu n'as aucune base à préparer.

<!-- À CONFIRMER : toute cette procédure (voie « Option C ») n'a été testée chez aucun hébergeur réel : HUB-NODE-GENERIQUE.md, « Test à faire chez un hébergeur ». À éprouver sur le banc Pelican avec l'œuf « Node.js generic » avant publication (WORKFLOW phase 0 point 3) : démarrage, durée du premier lancement, mémoire. -->

Avant de commencer #

  • Un serveur « Node.js » chez un hébergeur de jeux (il s'appelle souvent ainsi dans la liste des jeux ou des applications). Il doit être en Node.js 22 ou plus récent, sur un processeur Intel ou AMD 64 bits (le cas de presque tous les hébergeurs), sous Linux. Si ton hébergeur propose plutôt un panel où tu peux importer un œuf, Installer sur Pelican ou Installer sur Pterodactyl sont plus directs ; pour reconnaître ton panel, voir Reconnaître Pelican ou Pterodactyl.
  • Les ressources du serveur : 2 Go de mémoire conseillés (1 Go au minimum) et au moins 3 Go de disque (5 Go sont plus confortables). Un forfait de 512 Mo est trop juste : le serveur fait tourner Agora et sa base de données. <!-- À CONFIRMER : HUB-NODE-GENERIQUE.md annonce « 1 Go conseillé, 768 Mo minimum » ; l'œuf, lui, exige 1,5 Go (BASE-INTEGREE §3, mesure banc encore à faire). agora.mjs n'a aucun garde-fou mémoire. -->
  • Ta clé de licence (elle commence par AGORA-), sur la page Installer sur mon panel de ton espace sur agorapanel.com (Mon espace → Installer sur mon panel) : la section « Ta clé de licence » l'affiche à ta demande. Pas de clé ? Clique sur Obtenir ma clé d'essai gratuite : voir L'essai gratuit de 14 jours.
  • Le gestionnaire de fichiers du panel de ton hébergeur (l'explorateur de fichiers dans le navigateur) : il te sert à déposer et à créer des fichiers.
  • Une sortie vers Internet en HTTPS depuis le serveur : Agora joint agorapanel.com (licence et téléchargement) et le registre npm (registry.npmjs.org, pour la base de données portable).
  • Les mots panel, Node.js, gestionnaire de fichiers et base de données sont dans le glossaire ; les deux bases d'Agora sont distinguées dans Les deux bases d'Agora.

Étapes #

  1. Commande le serveur Node.js chez ton hébergeur, avec les ressources ci-dessus.

    <!-- CAPTURE C-313 -->

  2. Télécharge agora.mjs. Enregistre sur ton ordinateur le fichier https://agorapanel.com/agora.mjs. C'est un fichier public : il ne contient ni code du produit ni ta clé.

  3. Dépose-le à la racine du serveur. Dans le gestionnaire de fichiers du panel, envoie agora.mjs à la racine (le dossier de départ, /home/container). Ne dépose pas de package.json à la racine.

    <!-- CAPTURE C-314 -->

  4. Dis au serveur de démarrer ce fichier. Dans l'onglet Startup (Démarrage) du serveur, mets la variable « fichier principal » (MAIN_FILE, parfois écrite Main file) à agora.mjs. Laisse les autres variables vides.

    <!-- CAPTURE C-315 -->

  5. Crée le fichier agora.env. Toujours dans le gestionnaire de fichiers, crée à la racine, à côté de agora.mjs, un nouveau fichier nommé exactement agora.env, avec ces lignes (remplace la clé par la tienne, sans espace ni guillemets) :

    AGORA_KEY=AGORA-XXXXX-XXXXX-XXXXX-XXXXX

    Ce type de serveur n'offre pas de variables libres : c'est ce fichier qui en tient lieu. Il contient ta clé, garde-le privé. Pour les autres réglages possibles, voir « Pour aller plus loin ».

    <!-- CAPTURE C-316 -->

  6. Démarre le serveur. Clique sur Start et suis la console. Le premier démarrage prend quelques minutes. Ne clique ni sur Stop ni sur Kill pendant ce temps. Chaque ligne commence par [agora-runtime et l'heure. Tu verras, dans l'ordre : la lecture de agora.env, le téléchargement de la base de données PostgreSQL (une vingtaine de Mo, vérifiée par son empreinte), son installation, l'enregistrement de ton installation, licence activée, le téléchargement d'Agora, première installation : migrations…, démarrage d'Agora, puis ✓ Ready in … et application prête. <!-- À CONFIRMER : durée réelle du premier démarrage et suite exacte des lignes de la console (non testé chez un hébergeur) -->

    <!-- CAPTURE C-317 -->

  7. Ouvre ton site. Le panel de l'hébergeur affiche l'adresse IP et le port de ton serveur (souvent dans l'onglet Network ou sur la page d'accueil du serveur). Tape-les dans ton navigateur, précédés de http://, par exemple http://203.0.113.20:3020 (une adresse d'exemple : la tienne sera différente).

  8. Fais la mise en route. L'écran qui s'ouvre te guide en trois étapes. Il te donne l'adresse exacte à recopier chez Discord, sous la forme http://IP:PORT/api/auth/callback/discord : voir Faire la mise en route.

Tu sais que c'est réussi quand… #

  • La console affiche licence activée, puis ✓ Ready in … et application prête.
  • Ton navigateur affiche l'écran Mise en route.
  • http://IP:PORT/api/health répond "ok": true et "db": "ok".

Le panel peut afficher le serveur « en marche » dès que le processus démarre, bien avant que le site soit prêt : fie-toi à la ligne application prête. <!-- À CONFIRMER : comportement de l'indicateur d'état du panel avec l'œuf Node.js generic -->

Si ça ne marche pas #

Ce que tu vois dans la consoleCause probableQue faire
aucune clé de licence : renseigne AGORA_KEY…agora.env est absent, mal nommé (par exemple agora.env.txt), pas à côté de agora.mjs, ou sa ligne est videVérifie le nom, l'emplacement et la ligne AGORA_KEY=…. Au démarrage, la ligne configuration lue dans …/agora.env confirme que le fichier est trouvé
aucun Postgres portable pour cette machine (…)Le serveur n'est pas en Linux 64 bits Intel/AMD standard (par exemple ARM)Choisis un autre forfait, ou voir « Apporter ta propre base » plus bas
Postgres portable : … ou un échec de téléchargementLe serveur ne joint pas registry.npmjs.org, ou le disque est pleinVérifie l'accès Internet et l'espace disque libre
Agora n'arrive pas à joindre son serveur de licences.Pas d'accès Internet en HTTPSVoir Serveur de licences injoignable
activation 409 …Une autre installation tient déjà le siège de ta cléSi c'est ce serveur qui a été réinstallé, ajoute la ligne AGORA_TRANSFER=1 dans agora.env le temps d'un démarrage, puis retire-la ; voir Libérer un siège de licence
pg_ctl start a échoué (voir postgres.log)Mémoire ou disque insuffisantsLis les dernières lignes de data/postgres.log dans le gestionnaire de fichiers, augmente la mémoire ou le disque, puis redémarre
Agora s'est arrêté (code …, signal SIGKILL)L'hébergeur a coupé le serveur faute de mémoirePasse à un forfait avec plus de mémoire
Le serveur est « en marche » mais le site n'ouvre pasLe démarrage n'est pas terminé, ou mauvaise adresseAttends application prête, puis reprends l'IP et le port de l'hébergeur, en http://

Si rien ne correspond, ouvre un billet avec la dernière page de console : voir Ouvrir un billet de support.

Pour aller plus loin #

Les autres réglages d'agora.env #

Chaque ligne s'écrit NOM=valeur. Une ligne qui commence par # est un commentaire. Si ton hébergeur offre de vraies variables d'environnement, elles sont prioritaires sur le fichier.

# Obligatoire
AGORA_KEY=AGORA-XXXXX-XXXXX-XXXXX-XXXXX
# Facultatif : canal de mises à jour (stable par défaut, bêta réservé au palier Pro)
AGORA_UPDATE_CHANNEL=stable
# Facultatif : ton domaine en HTTPS, si ton hébergeur en fournit un
# AUTH_URL=https://forum.exemple.com

Le fichier est resserré en lecture pour le propriétaire (droits 0600) à chaque démarrage. La liste complète est dans Les variables d'environnement.

HTTPS et adresse publique #

Sans domaine, ton site s'ouvre en http://IP:PORT, ce qui suffit pour démarrer. La tablette en jeu exige du HTTPS sur une adresse publique : si ton hébergeur propose un sous-domaine en HTTPS qui pointe vers ton port, ou si tu passes par un tunnel Cloudflare, lis Derrière un proxy, puis indique l'adresse dans Administration → Configuration → Ressource Agora, champ Adresse publique du Hub.

Où sont les données #

/home/container/
  agora.mjs     le fichier de démarrage
  agora.env     tes réglages, dont ta clé
  data/         tout le reste : la base de données (dossier pg), les versions
                d'Agora, les sauvegardes (backups), l'identité de l'installation

Les sauvegardes d'Agora (fichiers .sql) sont dans data/backups, visibles dans le gestionnaire de fichiers. La copie de fichiers du panel de l'hébergeur n'est pas une sauvegarde de la base : elle copie une base en train de fonctionner, donc incohérente. Seules font foi les sauvegardes d'Agora : voir Sauvegardes et restauration.

Mises à jour #

Elles se font en un clic dans Administration → Agora, comme pour les autres voies : voir Mettre à jour Agora en un clic. Le fichier agora.mjs lui-même ne se met pas à jour tout seul, mais il change rarement : retélécharge-le seulement si les notes de version le demandent.

Arrêter proprement #

Utilise Stop (et pas Kill) pour que la base de données se ferme proprement. Après un arrêt brutal, Agora reprend tout seul au prochain démarrage.

Apporter ta propre base PostgreSQL (option avancée) #

Jamais nécessaire, sauf si le serveur ne peut pas faire tourner la base portable. Si tu possèdes un serveur PostgreSQL joignable depuis ton serveur, ajoute dans agora.env une ligne DATABASE_URL=postgresql://utilisateur:motdepasse@hote:5432/base?schema=public. Elle prime alors sur la base intégrée. Crée la base et son utilisateur avant de démarrer. <!-- À CONFIRMER : forme exacte de l'URL acceptée par agora.mjs pour une base externe, essai banc -->

Cet article t'a aidé ?