Wat je nodig hebt
- PHP 8.4 met de extensies
pdo_mysql,intl,zipenbcmath. - Composer.
- Node.js 22, om de stijlen en scripts te bouwen.
- MySQL, MariaDB of SQLite.
- Een webserver, zoals nginx, Apache of Caddy.
Installeren
1
Download de code
2
Installeer de afhankelijkheden
3
Richt het portaal in
4
Stel je webserver in
Laat je webserver naar de map
public wijzen. De webserver moet kunnen schrijven in storage en bootstrap/cache.Wat portal:install doet
portal:install richt het portaal in:
- Bestaat
.envniet of is het leeg, dan kopieert het.env.example. - Het stelt de vragen en schrijft de antwoorden in
.env. Je ziet “.env bijgewerkt.”. - Het maakt de sleutel van de app en twee api-keys: een die begint met
plt_en een die begint metist_. - Het bouwt de database op.
- Het maakt de link
public/storageals die er nog niet is. - Het laat het blok voor de
config.ymlvan de plugin zien. - Het maakt een link om beheerder te worden. Die werkt één keer en is 24 uur geldig.
De vragen
Kies je SQLite, dan komt de database in
database/database.sqlite. Het bestand wordt aangemaakt als het er nog niet is.
Draait de plugin op 127.0.0.1, localhost of ::1, dan zet het blok host: 127.0.0.1 bij rest-api. De plugin hoeft dan alleen lokaal te luisteren. Anders staat er host: 0.0.0.0.
Opties
Met opties sla je vragen over. Met--no-interaction stelt het commando geen vragen en gebruikt het voor ontbrekende waarden wat al in .env staat, of de standaardwaarde.
Wat er in .env komt
Naast je antwoorden zetportal:install deze waarden in .env:
Webserver
Laat de document root van je webserver naar de mappublic wijzen. Voor Apache staat er een .htaccess in public. Voor nginx bevat de repository geen voorbeeldconfiguratie.
De Docker-images gebruiken FrankenPHP, dat is Caddy met PHP erin. Dit is de Caddyfile uit de repository. php_server werkt alleen in FrankenPHP, niet in gewone Caddy.
Cron en queue
Je hebt geen queue-worker nodig:portal:install zet QUEUE_CONNECTION=sync. Het portaal heeft ook geen geplande taken waarvoor je een cronjob moet instellen.
Logs
Met de standaardinstellingen uit.env.example schrijft het portaal zijn logs naar storage/logs/laravel.log.
Beheerder worden en testen
Open de link uitportal:install en log in of maak een account aan. Daarna ben je beheerder. Een nieuwe link maak je met:
--hours= kies je hoe lang de link geldig is. Standaard is dat 24 uur. Een nieuwe link maakt de vorige ongeldig.
Zet daarna het blok in de config.yml van de plugin, herstart de Minecraft-server en test de verbinding:
Proberen zonder Minecraft-server
Wil je het portaal eerst uitproberen? Met de demomodus doet het portaal alsof er een plugin is, met een verzonnen stad.1
Zet de demomodus aan
Zet
PORTAL_DEMO=true in .env. APP_ENV mag niet production zijn. portal:install zet standaard APP_ENV=production. Draai het dan met bijvoorbeeld --environment=local.2
Laad de demodata
3
Log in
Log in met
demo@openminetopia.nl en wachtwoord demo1234, of open /demo. Dit account is beheerder.