Skip to main content
Heb je een Pterodactyl-panel? Dan draai je het portaal als gewone server met het egg OpenMinetopia Portal. Het portaal richt zichzelf in met de variabelen die je bij Startup invult.

Installeren

1

Importeer het egg

Download egg-openminetopia-portal.json uit de map pterodactyl van de repository. Importeer het in je panel via Admin, Nests, Import Egg.
2

Maak een server

Maak een server met het egg OpenMinetopia Portal. De poort van deze server is de poort waarop het portaal luistert.
3

Maak een database

Open de server en maak op het tabblad Databases een database aan. Je krijgt dan een host, poort, databasenaam, gebruiker en wachtwoord.
4

Vul de variabelen in

Vul bij Startup de naam, het adres van het portaal, de plugin en de databasegegevens in. Zie de tabel hieronder.
5

Start de server

De console laat zien wat je in de config.yml van de plugin zet, en een link om beheerder te worden.
Bij het installeren van de server maakt het egg alleen de map storage en een leeg .env aan. Het portaal zelf zit in het image ghcr.io/openminetopia/portal-pterodactyl:latest.

Startup-variabelen

Het portaal verbindt met de database als MySQL.
Staat op het tabblad Databases 127.0.0.1 als host? Vul dat dan niet in bij DB_HOST. In de container is 127.0.0.1 het portaal zelf. Vul het IP-adres in waarop de container de host bereikt, meestal het gateway-adres van het Docker-netwerk van Wings, zoals 172.18.0.1. MySQL moet dan ook op dat adres luisteren en verbindingen van de container toestaan.

Wat er bij elke start gebeurt

Bij elke start:
  1. Wacht het portaal maximaal 60 seconden op de database.
  2. Draait het portal:install met de variabelen van de server. De sleutels en gegevens blijven bewaard. Een gewijzigde variabele gaat dus in bij de volgende start.
  3. Zolang er nog geen beheerder is, maakt het een nieuwe link om beheerder te worden.
  4. Start het de webserver op de poort van de server.
  5. Luistert het naar commando’s in de console.

Wat de console laat zien

In de console zie je eerst het blok voor de config.yml van de plugin:
Draait je portaal op http://, dan staat bij url het volledige adres, en zie je ook deze waarschuwing: “Je portaal draait zonder HTTPS. De plugin koppelt accounts (/koppel) nu alleen via https://, dus koppelen werkt pas met HTTPS of met een plugin-versie die http:// in portal.url ondersteunt.” Zo’n plugin-versie is een build van de master-branch van de plugin, of een release die nieuwer is dan 1.5.0. Is er nog geen beheerder, dan volgt de link:
Tot slot zie je Portaal draait op poort 8080., met de poort van jouw server, en de lijst met commando’s. Dan staat de server in het panel op online.
Is de link verlopen? Typ adminlink in de console, of herstart de server. Zolang er geen beheerder is, krijg je bij elke start een nieuwe link. De link van de vorige start werkt dan niet meer.
Zet het blok in plugins/OpenMinetopia/config.yml op je Minecraft-server en herstart die. Wat elke regel doet, lees je bij Koppelen met de plugin.

Commando’s in de console

Als het portaal draait, typ je deze commando’s in de console van de server: Typ je iets anders, dan zegt de console dat het commando onbekend is en dat je help kunt typen. De knop Stop in het panel stopt het portaal ook netjes. Je hoeft de server niet te killen.

HTTPS

Het portaal luistert met gewone HTTP op de poort van de server. Wil je HTTPS, zet er dan een reverse proxy zoals nginx of Caddy, of Cloudflare voor. Vul bij PORTAL_URL dan het https://-adres in. Spelers kunnen hun account pas koppelen (/koppel) als het portaal HTTPS heeft. Gebruik je geen HTTPS, vul dan http://, het IP-adres en de poort van de server in, bijvoorbeeld http://203.0.113.10:8080.

Met Cloudflare

Cloudflare stuurt verkeer via de proxy alleen naar een paar vaste poorten, zoals 80, 443, 8080 en 8443. Je Pterodactyl-server heeft meestal een andere poort. Met een Origin Rule stuur je het verkeer naar de juiste poort. Dat kan op elk Cloudflare-plan.
1

Maak een DNS-record

Ga naar DNS en klik Add record. Kies type A, vul bij Name bijvoorbeeld portaal in en bij IPv4 address het IP-adres van de server, zonder poort. Zet Proxy status aan (oranje wolkje).
2

Stuur het verkeer naar de poort van de server

Ga naar Rules, Origin Rules en maak een regel. Kies als voorwaarde Hostname equals portaal.jouwserver.nl. Kies bij Destination Port Rewrite to en vul de poort van de server in.
3

Zet SSL op Flexible

Het portaal zelf praat HTTP, Cloudflare doet de HTTPS. Zet daarom bij SSL/TLS de modus op Flexible. Gebruikt de rest van je domein Full? Maak dan bij Rules, Configuration Rules een regel voor alleen deze hostname met SSL op Flexible.
4

Pas het adres aan

Vul bij Startup PORTAL_URL in als https://portaal.jouwserver.nl en herstart de server. Zet daarna het nieuwe adres bij portal.url in de config.yml van de plugin en herstart de Minecraft-server.
Krijg je een foutpagina 521 of 522 van Cloudflare? Controleer dan de Origin Rule en of de poort van de server open staat in de firewall van je host.

Updaten

Het portaal zit in het image, niet in de bestanden van je server. Daarin staan je .env en de map storage. Start je de server met een nieuwer image, dan draait de nieuwe versie. Bij het starten werkt portal:install de database bij. Meer bij Updaten en backups.