52 lines
3.4 KiB
JSON
52 lines
3.4 KiB
JSON
{
|
|
"_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO",
|
|
"meta": {
|
|
"version": "PTDL_v2",
|
|
"update_url": null
|
|
},
|
|
"exported_at": "2026-02-26T17:58:53+01:00",
|
|
"name": "GameDig Server Status API",
|
|
"author": "cap@cap-net.ch",
|
|
"description": "Fragt Gameserver (DayZ, CS2, Rust, ARK u.v.m.) per GameDig ab und stellt die Ergebnisse als JSON-REST-API zur Verfuegung. Optionaler API-Key-Schutz. Konfiguration ueber config.json im Dateimanager.",
|
|
"features": null,
|
|
"docker_images": {
|
|
"Node.js 20": "ghcr.io\/pterodactyl\/yolks:nodejs_20"
|
|
},
|
|
"file_denylist": [],
|
|
"startup": "sh \/home\/container\/entrypoint.sh",
|
|
"config": {
|
|
"files": "{}",
|
|
"startup": "{\r\n \"done\": \"GameDig Server Status API\",\r\n \"userInteraction\": []\r\n}",
|
|
"logs": "{\r\n \"custom\": true,\r\n \"location\": \"logs\/latest.log\"\r\n}",
|
|
"stop": "^C"
|
|
},
|
|
"scripts": {
|
|
"installation": {
|
|
"script": "#!\/bin\/bash\r\napt-get update -y\r\napt-get install -y curl\r\n\r\ncd \/mnt\/server\r\n\r\nGITEA_RAW=\"https:\/\/gitea.cap-net.ch\/Cap\/gameserver-status-api\/raw\/branch\/main\"\r\n\r\necho \"[INFO] Lade Dateien von Gitea herunter...\"\r\n\r\ncurl -sSL \"${GITEA_RAW}\/server.js\" -o server.js\r\nif [ $? -ne 0 ]; then\r\n echo \"[FEHLER] server.js konnte nicht geladen werden.\"\r\n exit 1\r\nfi\r\n\r\ncurl -sSL \"${GITEA_RAW}\/entrypoint.sh\" -o entrypoint.sh\r\nif [ $? -ne 0 ]; then\r\n echo \"[FEHLER] entrypoint.sh konnte nicht geladen werden.\"\r\n exit 1\r\nfi\r\nchmod +x entrypoint.sh\r\n\r\necho \"[INFO] Erstelle package.json...\"\r\ncat > package.json << 'EOF'\r\n{\r\n \"name\": \"gameserver-status-api\",\r\n \"version\": \"1.0.0\",\r\n \"description\": \"GameDig Server Status API\",\r\n \"type\": \"module\",\r\n \"main\": \"server.js\",\r\n \"dependencies\": {\r\n \"gamedig\": \"^5.3.2\"\r\n }\r\n}\r\nEOF\r\n\r\necho \"[INFO] Installiere npm-Pakete...\"\r\nnpm install --omit=dev\r\n\r\nif [ ! -f \"config.json\" ]; then\r\n echo \"[INFO] Lege Beispiel-config.json an...\"\r\n curl -sSL \"${GITEA_RAW}\/config.json\" -o config.json\r\n echo \"[WICHTIG] Bitte config.json im Dateimanager anpassen!\"\r\nfi\r\n\r\necho \"\"\r\necho \"[DONE] Installation abgeschlossen.\"\r\necho \"[INFO] Naechste Schritte:\"\r\necho \" 1. config.json im Dateimanager anpassen\"\r\necho \" 2. Server starten\"",
|
|
"container": "ghcr.io\/pterodactyl\/installers:debian",
|
|
"entrypoint": "bash"
|
|
}
|
|
},
|
|
"variables": [
|
|
{
|
|
"name": "Query-Intervall (Sekunden)",
|
|
"description": "Wie oft sollen die Gameserver abgefragt werden? Empfohlen: 60. Minimum: 10.",
|
|
"env_variable": "QUERY_INTERVAL",
|
|
"default_value": "60",
|
|
"user_viewable": true,
|
|
"user_editable": true,
|
|
"rules": "required|numeric|min:10",
|
|
"field_type": "text"
|
|
},
|
|
{
|
|
"name": "API Key (optional)",
|
|
"description": "Schuetzt die API mit einem Key. Abfrage via Header X-API-Key oder URL-Parameter ?key=. Leer lassen = kein Schutz.",
|
|
"env_variable": "API_KEY",
|
|
"default_value": "",
|
|
"user_viewable": true,
|
|
"user_editable": true,
|
|
"rules": "nullable|string|max:128",
|
|
"field_type": "text"
|
|
}
|
|
]
|
|
} |