Zelf hosten

Sridu zelf draaien

Sridu is een map met bestanden. Je kunt het op je eigen computer openen, met Docker voor het hele huis laten draaien of op internet zetten. Kies hieronder de manier die bij je past. Elke manier wordt stap voor stap uitgelegd, voorkennis is niet nodig.

Wil je alleen spelen? Dan heb je dit allemaal niet nodig. Open play.sridu.com in Chrome of Edge, daar staat alles al klaar en het is gratis.

Draait Sridu al bij je? Beheerpagina · Configurator · Alle instellingen

Kies je manier

Welke past bij mij?

  • Alleen de bestanden Eén computer met de camera’s. Vijf minuten, niets te installeren behalve een klein hulpprogramma.
  • Docker thuis Voor elke telefoon, tablet en elk bord in huis of in het clubhuis. Op een NAS (Synology, Unraid), een Raspberry Pi of een pc. Ongeveer 15 minuten.
  • Openbare server Je eigen Sridu op je eigen domein, voor een club of voor vrienden overal. Daarvoor heb je Docker nodig, een domein en https ervoor: thuis een Cloudflare Tunnel, op een gehuurde server een reverse proxy. Eén avond werk.
  • Webruimte Cloudflare Pages, Netlify of GitHub Pages. Gratis en zonder eigen server, maar zonder beheerpagina en online ranglijst.
sridu-231.zip Versie 231 · 20 MB · de complete app, inclusief Docker-bestanden
Sridu downloaden

Alleen de bestanden

Je speelt op de computer waar de camera’s aan hangen. De browser heeft daarvoor een kleine webserver nodig. index.html openen met een dubbelklik werkt niet, want dan weigert de browser de camera’s.

Windows

  1. Installeer Python uit de Microsoft Store (zoek op ‘Python’ en neem de nieuwste versie). Het is gratis en je hebt het alleen nodig als kleine webserver.
  2. Download Sridu (sridu-latest.zip) en pak het uit: klik met rechts op het bestand en kies ‘Alles uitpakken’.
  3. Open een terminal in de map: open de uitgepakte map, klik met rechts op een lege plek en kies ‘Openen in Terminal’.
  4. Start de webserver met dit commando en laat het venster open:
python -m http.server 8080
  1. Open http://localhost:8080 in Chrome of Edge. Klaar. Stoppen doe je door het terminalvenster te sluiten.

macOS

  1. Download Sridu (sridu-latest.zip). Safari pakt het vanzelf uit in je map Downloads.
  2. Open een terminal in de map: klik in de Finder met rechts op de map, Voorzieningen, ‘Nieuwe Terminal bij map’.
  3. Start de webserver met dit commando en laat het venster open. Biedt macOS aan om de ‘command line developer tools’ te installeren, ga dan akkoord en voer het commando daarna nog een keer uit.
python3 -m http.server 8080
  1. Open http://localhost:8080 in Chrome of Edge. Klaar. Stoppen doe je met Ctrl+C in de terminal.

Linux

  1. Open een terminal en download en pak Sridu uit:
mkdir -p ~/sridu && cd ~/sridu
wget https://sridu.com/wp-content/themes/sridu/assets/download/sridu-latest.zip
unzip -q sridu-latest.zip && rm sridu-latest.zip
  1. Start de webserver en laat de terminal open:
python3 -m http.server 8080
  1. Open http://localhost:8080 in Chrome of Chromium. Klaar. Stoppen doe je met Ctrl+C.

Telefoons en tablets kunnen Sridu niet vanuit bestanden draaien, want een browser geeft de camera en de versleuteling voor online potjes alleen vrij op https:// of op localhost. Ze hebben wel twee makkelijke alternatieven. Open play.sridu.com: dat is gratis, installeert als app en blijft offline werken als het eenmaal geladen is. Of laat een ander apparaat in huis Sridu hosten met Docker, zoals een NAS, een Raspberry Pi of een pc, en open het vanaf daar.

Docker thuis

Docker draait Sridu als een kleine server. Elk apparaat in je netwerk kan het dan openen, telefoons ook, met een beheerpagina, een lobby en een ranglijst. Omdat het via https loopt, kan elk apparaat Sridu ook als app installeren. De stappen hangen af van waar Docker draait.

Alleen voor je thuisnetwerk. In deze opstelling delen alle apparaten de spelers: namen, pincodes, statistieken en elk potje staan in /data/players.json op de server, en iedereen die deze Sridu kan bereiken, kan dat bestand zonder inloggen lezen en wijzigen. Thuis is dat precies wat je wilt. Maak deze opstelling nooit bereikbaar vanaf internet, niet met port forwarding, niet via een tunnel en niet op een gehuurde server. Neem daarvoor het tabblad Openbare server: dat bewaart geen spelersgegevens op de server.

Synology

  1. Installeer Container Manager via het Package Center (DSM 7.2 of nieuwer).
  2. Zet Sridu op de NAS: open in File Station de gedeelde map docker, upload daar sridu-latest.zip naartoe, klik er met rechts op, ‘Uitpakken’, ‘Hier uitpakken’. Hernoem de nieuwe map sridu-… naar sridu.
  3. Pas twee instellingen aan: open docker-compose.yml met de Text Editor. Zet het IP-adres van je NAS bij SRIDU_HOSTS, bijvoorbeeld SRIDU_HOSTS: "192.168.1.20". Zet PUID: "1026" en PGID: "100". Opslaan.
  4. Maak het project aan: Container Manager, Project, Maken. Naam sridu, pad /volume1/docker/sridu, bron ‘Bestaande docker-compose.yml gebruiken’. Sla de webportal over en kies Gereed. De eerste build duurt een paar minuten.
  5. Spelen: op de NAS zelf speelt niemand, dus open https://<NAS IP>:8443 op de computer bij het bord en op elk ander apparaat.

De beheerpagina instellen

  1. Open de beheerpagina op http://<NAS IP>:8090/admin/. Die opent alleen vanuit je thuisnetwerk, dus gebruik het IP-adres en geen domeinnaam.
  2. Voer de setupcode in. Die ziet eruit als ABCD-EFGH-JKLM. Het makkelijkst vind je hem in het bestand SETUP-CODE.txt in de map server/admin van je Sridu-map. Hij staat ook in het log van de container sridu-api: Container Manager, Container, sridu-api, Log.
  3. Kies een wachtwoord. Daarmee log je voortaan in. De setupcode heb je dan niet meer nodig. Wat elk tabblad doet, lees je in de uitleg van de beheerpagina.

Unraid

  1. Installeer ‘Docker Compose Manager’ via Apps (Community Applications). Daarmee krijg je het commando docker compose.
  2. Open de terminal (het icoon >_ rechtsboven) en haal Sridu op in appdata:
mkdir -p /mnt/user/appdata && cd /mnt/user/appdata
wget https://sridu.com/wp-content/themes/sridu/assets/download/sridu-latest.zip
unzip -q sridu-latest.zip -d sridu && rm sridu-latest.zip
cd sridu
  1. Pas twee instellingen aan: nano docker-compose.yml. Zet het IP-adres van je server bij SRIDU_HOSTS, bijvoorbeeld "192.168.1.20". Zet PUID: "99" en PGID: "100" (de gebruiker nobody en de groep users van Unraid). Opslaan met Ctrl+O, Enter, Ctrl+X.
  2. Start het. De eerste build duurt een paar minuten:
docker compose up -d --build
  1. Spelen: open https://<server IP>:8443 op de computer bij het bord en op elk ander apparaat.

De beheerpagina instellen

  1. Open de beheerpagina op http://<server IP>:8090/admin/. Die opent alleen vanuit je thuisnetwerk, dus gebruik het IP-adres en geen domeinnaam.
  2. Voer de setupcode in. Die ziet eruit als ABCD-EFGH-JKLM. Het makkelijkst vind je hem in het bestand SETUP-CODE.txt in de map server/admin van je Sridu-map. Hij staat ook in het log van de container sridu-api: klik in het tabblad Docker op sridu-api, Logs, of voer docker logs sridu-api uit.
  3. Kies een wachtwoord. Daarmee log je voortaan in. De setupcode heb je dan niet meer nodig. Wat elk tabblad doet, lees je in de uitleg van de beheerpagina.

Linux / Raspberry Pi

  1. Installeer Docker als het er nog niet op staat, en log daarna uit en weer in:
curl -fsSL https://get.docker.com | sh
sudo usermod -aG docker $USER
  1. Haal Sridu op:
mkdir -p ~ && cd ~
wget https://sridu.com/wp-content/themes/sridu/assets/download/sridu-latest.zip
unzip -q sridu-latest.zip -d sridu && rm sridu-latest.zip
cd sridu
  1. Pas twee instellingen aan: nano docker-compose.yml. Zet het IP-adres van de machine bij SRIDU_HOSTS (hostname -I laat het zien). Zet PUID en PGID op wat id laat zien, meestal 1000 en 1000.
  2. Start het:
docker compose up -d --build
  1. Spelen: http://localhost:8090 op deze machine, https://<IP>:8443 op elk ander apparaat.

De beheerpagina instellen

  1. Open de beheerpagina op http://<IP>:8090/admin/. Die opent alleen vanuit je thuisnetwerk, dus gebruik het IP-adres en geen domeinnaam.
  2. Voer de setupcode in. Die ziet eruit als ABCD-EFGH-JKLM. Het makkelijkst vind je hem in het bestand SETUP-CODE.txt in de map server/admin van je Sridu-map. Hij staat ook in het log van de container sridu-api: docker logs sridu-api.
  3. Kies een wachtwoord. Daarmee log je voortaan in. De setupcode heb je dan niet meer nodig. Wat elk tabblad doet, lees je in de uitleg van de beheerpagina.

Windows / Mac

  1. Installeer Docker Desktop van docker.com en start het.
  2. Download Sridu (sridu-latest.zip) en pak het uit, bijvoorbeeld in Documenten.
  3. Pas één instelling aan: open docker-compose.yml in een teksteditor en zet het IP-adres van deze computer bij SRIDU_HOSTS (Windows: ipconfig, Mac: Systeeminstellingen, Netwerk). PUID en PGID mogen blijven zoals ze zijn.
  4. Start het: open een terminal in de map (Windows: rechtsklik, ‘Openen in Terminal’; Mac: Voorzieningen, ‘Nieuwe Terminal bij map’) en voer uit:
docker compose up -d --build
  1. Spelen: http://localhost:8090 op deze computer, https://<IP>:8443 op elk ander apparaat.

De beheerpagina instellen

  1. Open de beheerpagina op http://localhost:8090/admin/. Die opent alleen vanuit je thuisnetwerk, dus gebruik het IP-adres en geen domeinnaam.
  2. Voer de setupcode in. Die ziet eruit als ABCD-EFGH-JKLM. Het makkelijkst vind je hem in het bestand SETUP-CODE.txt in de map server/admin van je Sridu-map. Hij staat ook in het log van de container sridu-api: Docker Desktop, Containers, sridu-api, Logs.
  3. Kies een wachtwoord. Daarmee log je voortaan in. De setupcode heb je dan niet meer nodig. Wat elk tabblad doet, lees je in de uitleg van de beheerpagina.

De browser waarschuwt voor het certificaat de eerste keer dat je https://…:8443 opent. Dat hoort zo: het certificaat komt van je eigen server en niet van een officiële instantie. Klik op ‘Geavanceerd’ en ‘Doorgaan’. Eén keer per apparaat is genoeg.

Openbare server

Je eigen Sridu op je eigen domein, voor een club of voor vrienden overal. Het draait in Docker op een machine die altijd aanstaat, en iets daarvoor regelt de https. Thuis is dat meestal een Cloudflare Tunnel, op een gehuurde server een reverse proxy.

Spelersdarts.your-club.com httpstunnel of proxy Je serverSridu, poort 8110beheerpaginaalleen vanaf hier Je computerthuisnetwerk of SSH

Wat je nodig hebt

  • Een machine die altijd aanstaat met Docker: je NAS of een mini-pc thuis, of een gehuurde server (VPS) bij een willekeurige hostingprovider.
  • Een domein of subdomein waarvoor je DNS-records kunt instellen, bijvoorbeeld darts.your-club.com.
  • https voor Sridu: thuis een Cloudflare Tunnel (het gratis abonnement is genoeg, en er gaat geen poort op je router open), op een gehuurde server een reverse proxy zoals Caddy, nginx of Traefik.

Stap voor stap

  1. Zet Sridu op de machine zoals in het tabblad Docker (op een gehuurde server zoals onder Linux), maar start het nog niet.
  2. Open deploy/public/docker-compose.yml en pas deze instellingen aan: je domein bij SRIDU_DOMAIN, SRIDU_LOBBY_GUESTS: "off" (tenzij je een open lobby voor iedereen wilt zijn), SRIDU_BUG_INBOX: "off", SRIDU_CF_ANALYTICS: "off" (tenzij je zelf Cloudflare Web Analytics aanzet) en PUID/PGID zoals voor jouw systeem.

Ga daarna verder bij de plek waar het draait:

Thuis: Cloudflare Tunnel

  1. Maak het project aan vanuit de map deploy/public (Synology: pad /volume1/docker/sridu/deploy/public; terminal: cd deploy/public && docker compose up -d --build).
  2. Maak de tunnel aan: verhuis je domein naar Cloudflare (het gratis abonnement is genoeg), maak dan in Zero Trust onder Networks, Tunnels een tunnel aan en draai de bijbehorende cloudflared op de NAS, zoals Cloudflare het je laat zien.
  3. Koppel het domein: voeg in de tunnel een public hostname toe. Subdomein en domein zoals in SRIDU_DOMAIN, type HTTP, URL <NAS IP>:8110.
  4. Test het: je domein hoort nu Sridu te tonen.
  5. Open de beheerpagina op een computer in je thuisnetwerk via http://<NAS IP>:8110/admin/, met het IP-adres van de NAS en niet het domein.

Gehuurde server: reverse proxy

  1. Houd de poort privé: verander in docker-compose.yml de poort van web van "8110:8080" naar "127.0.0.1:8110:8080". Dan bereikt alleen de proxy op dezelfde server Sridu, en het internet niet.
  2. Start het: cd deploy/public && docker compose up -d --build.
  3. Laat het domein naar de server wijzen: een A-record (en AAAA voor IPv6) met het IP-adres van de server bij je DNS-provider.
  4. Stel de proxy in. Met Caddy zijn twee regels in de Caddyfile genoeg, en Caddy haalt het certificaat zelf op: darts.your-club.com en daaronder reverse_proxy 127.0.0.1:8110. Met nginx, Traefik of Nginx Proxy Manager stuur je door naar 127.0.0.1:8110, met WebSockets aan en de headers X-Forwarded-For en X-Forwarded-Proto.
  5. Test het: je domein hoort nu Sridu te tonen.
  6. Open de beheerpagina via een SSH-tunnel. Voer op je eigen computer ssh -L 8110:127.0.0.1:8110 you@your-server uit en laat dat openstaan, open dan http://localhost:8110/admin/ in de browser. Voor Sridu zit je dan op de server zelf, dus de pagina gaat open.

De beheerpagina instellen

De beheerpagina opent nooit via je domein. your-domain/admin toont niets, en dat is expres: niemand op internet hoort zelfs het inlogscherm te zien. Open hem zoals hierboven in je tabblad beschreven, vanuit je thuisnetwerk of via een SSH-tunnel. Wil je hem echt via het domein bereiken, zet dan SRIDU_ADMIN_REMOTE: "on" en kies een lang wachtwoord. Een toegangscontrole ervoor, zoals Cloudflare Access, is nog veiliger.

  1. Voer de setupcode in. Die ziet eruit als ABCD-EFGH-JKLM. Het makkelijkst vind je hem in het bestand SETUP-CODE.txt in de map deploy/public/data van je Sridu-map. Hij staat ook in het log van de container sridu-public-api-1 (Synology: Container Manager, Container, Log; terminal: docker logs sridu-public-api-1).
  2. Kies een wachtwoord. Daarmee log je voortaan in. De setupcode heb je dan niet meer nodig. Wat elk tabblad doet, lees je in de uitleg van de beheerpagina.

Host je voor anderen in Duitsland of de EU? Dan heb je een colofon en een privacyverklaring nodig. Vul ze allebei in op de beheerpagina onder ‘Legal’. De app linkt er onderaan de startpagina naar.

Online potjes maken in sommige netwerken geen verbinding (optionele relay)

Mobiele data en sommige routers staan geen directe verbinding tussen twee borden toe. Een relay (TURN) geeft het versleutelde verkeer dan door. Een Cloudflare Tunnel draagt dat verkeer niet, dus de relay heeft open poorten nodig: UDP 3478, UDP 31000–31040 en TCP 3478, thuis op je router doorgestuurd naar de NAS, op een gehuurde server toegestaan in de firewall. De stappen staan in de commentaarregels bij de dienst relay in docker-compose.yml. Start hem met docker compose --profile relay up -d.

Webruimte

Sridu heeft geen eigen server nodig, dus elke webruimte die bestanden kan serveren is goed. Dat is gratis en snel geregeld. Wat je moet missen: de beheerpagina, een eigen lobby (spelers vinden elkaar dan via openbare servers) en de online ranglijst. Naam, kleuren, spelvormen en startinstellingen werken wel, via de configurator.

Cloudflare Pages

  1. Download Sridu (sridu-latest.zip) en laat het ingepakt.
  2. In het Cloudflare-dashboard: Workers & Pages, Create, Pages, ‘Upload assets’.
  3. Geef het een naam en sleep het ZIP-bestand zelf naar het uploadveld. Deploy. De uitgepakte map werkt niet: met de stembestanden zijn dat zo’n 1.000 bestanden, meer dan het dashboard in één upload aanneemt.
  4. Klaar: Sridu draait op <name>.pages.dev. Onder Custom domains kun je je eigen domein toevoegen.

Netlify

  1. Download Sridu en pak het uit (sridu-latest.zip).
  2. Open app.netlify.com/drop en sleep de uitgepakte map op de pagina.
  3. Klaar: Netlify laat het adres zien. Maak (gratis) een account aan als je de site wilt houden.

GitHub Pages

  1. Maak een nieuwe, lege repository aan op GitHub.
  2. Zet Sridu erin vanuit een terminal. Uploaden in de browser gaat maar met 100 bestanden tegelijk, en Sridu heeft er zo’n 1.000: git clone https://github.com/<name>/<repository>.git, dan cd <repository>, download sridu-latest.zip daarin, unzip -q sridu-latest.zip && rm sridu-latest.zip, git add -A, git commit -m "Sridu", git push.
  3. Zet Pages aan: Settings, Pages, source ‘Deploy from a branch’, branch main, map / (root).
  4. Klaar: na een minuut draait Sridu op <name>.github.io/<repository>.

Je instellingen zonder Docker: de configurator

Een kopie op webruimte heeft geen beheerpagina, maar kan wel de naam en kleuren van je club dragen, een welkomstwoord, een mededeling, een selectie spelvormen en startinstellingen voor nieuwe apparaten. De app leest die uit een bestand config.json naast index.html. De configurator in de app-map maakt dat bestand voor je.

  1. Open config.html Dat zit bij Sridu, naast index.html. Open na het uploaden https://<your address>/config.html. Staat er al een config.json, dan worden de waarden daaruit geladen.
  2. Loop de onderdelen door General, Look & welcome, Customise the app, Online en Legal. Wat je niet aanraakt, houdt de standaardwaarde. Je wijzigingen blijven in deze browser bewaard tot je ze downloadt.
  3. Download config.json De knop zit rechtsboven. Het bestand wordt in je browser gemaakt, er wordt niets verstuurd.
  4. Zet het naast index.html Upload de map opnieuw en laad de app opnieuw. Apparaten die de app al kennen, pikken de wijziging op bij hun volgende start.
WaarZo komt het bestand erop
Cloudflare PagesPak Sridu uit, zet config.json naast index.html, selecteer alles in de map en comprimeer dat tot een nieuwe ZIP (de bestanden, niet de map eromheen). Upload die ZIP in het dashboard met ‘Create deployment’. Met wrangler pages deploy zet je het bestand gewoon in de map.
Webruimte (FTP)Upload het met je FTP-programma naar dezelfde map als index.html.
Webstation op een NASKopieer het naar de map van het webstation naast index.html (Synology: de gedeelde map web, QNAP: Web), met File Station of via het netwerk.
Je eigen computerNaast index.html in de map die je serveert, bijvoorbeeld met python3 -m http.server.
  • LogoEen bestand naast index.html, zoals logo.png, een https-adres, of een kleine afbeelding tot 100 KB die direct in config.json gaat.
  • LobbyZonder eigen server vinden spelers elkaar zonder server via openbare brokers, of in de Sridu online lobby op play.sridu.com.
  • Colofon en privacyverklaringEen link naar een pagina op je website, of de tekst zelf in config.json.
  • Helemaal geen bestandKan ook. De app doet dan wat hij altijd deed.

Wat Docker nodig heeft: een gedeelde ranglijst, spelersgegevens op de server, een eigen lobby met moderatie en een eigen broker, de gebruikscijfers en de beheerpagina met wachtwoord, logo-upload en back-up. Kies daarvoor Docker thuis of een openbare server.

Je server draaiende houden

Na de installatie

Alles wat je later nodig hebt, voor Docker thuis en de openbare server.

Ik heb de setupcode gemist

Open het bestand SETUP-CODE.txt in de datamap van de server: bij Docker thuis server/admin/, bij de openbare server deploy/public/data/. Het blijft daar staan tot er een wachtwoord is ingesteld. Staat er geen bestand? Dan is de beheerdienst nog niet gestart: kijk in het log van het project of er een fout staat, of start het opnieuw.

Ik ben het beheerderswachtwoord vergeten

Verwijder het bestand admin.json in de datamap van de server en start het project opnieuw. Er verschijnt een nieuwe setupcode in het log en je kiest een nieuw wachtwoord. Instellingen, ranglijst en teksten blijven bewaard.

Waar die map staat: bij Docker thuis server/admin/, bij de openbare server deploy/public/data/.

Waar staan mijn gegevens en hoe maak ik een back-up?

Alles staat in gewone mappen naast docker-compose.yml. Docker thuis: data/ (de spelersgegevens van elke browser) en server/ (beheer, ranglijst, certificaat). Openbare server: deploy/public/data/. Voor een back-up kopieer je deze mappen, of je neemt ze op in je back-upprogramma (Hyper Backup, Unraid appdata backup).

Verhuizen naar een andere server

Stop het project, kopieer de hele Sridu-map inclusief de datamappen naar de nieuwe machine, pas het IP-adres in SRIDU_HOSTS aan als dat veranderd is, en maak daar het project aan. Alles is terug: spelers, ranglijst, wachtwoord.

Een instelling wijzigen

Open docker-compose.yml, verander de waarde, sla op en start het project opnieuw (Synology: Project, Actie, Opnieuw opstarten; terminal: docker compose up -d). Veel instellingen kun je ook op de beheerpagina wijzigen, zonder herstart.

Bijwerken naar een nieuwe versie

Wat een nieuwe versie brengt, staat in de changelog. Het makkelijkst gaat het via het tabblad Update van de beheerpagina: dat bouwt de nieuwe versie terwijl de oude blijft draaien en wisselt dan de containers om. Spelers merken hooguit een onderbreking van een paar seconden.

  • Rebuild, altijd beschikbaar: download sridu-latest.zip, pak het uit over je map heen en houd je docker-compose.yml en de datamappen. Druk dan op Rebuild op de beheerpagina.
  • Download and update, als je het aanzet: zet in docker-compose.yml onder de dienst updater de waarde SRIDU_UPDATE_DOWNLOAD op "on" en voer één keer docker compose up -d uit. Vanaf dan laat de beheerpagina zien wanneer er een nieuwe versie is en installeert die met één klik. Je compose-bestanden, instellingen en gegevens blijven zoals ze zijn, en Back to the previous version zet de oude bestanden terug.
  • Zonder de updater: pak uit zoals hierboven en bouw dan met de hand opnieuw (Synology: Project, Actie, Bouwen; terminal: docker compose up -d --build). Een oudere installatie krijgt de updater eenmalig op dezelfde manier: het tabblad Update laat zien welke regels je aan docker-compose.yml moet toevoegen.

Nieuwe instellingen van een release staan in de docker-compose.yml in de ZIP. Neem over wat je wilt gebruiken.

De poort is al in gebruik

Een ander programma gebruikt al 8090, 8443 of 8110. Verander in docker-compose.yml onder ports het linker getal, bijvoorbeeld "8091:8080", en gebruik het nieuwe getal in het adres.

Waarom PUID en PGID?

Die bepalen welke gebruiker eigenaar is van de datamappen. Met je eigen gebruiker kun je ze openen, kopiëren en back-uppen zonder gedoe met rechten. Synology: 1026 en 100. Unraid: 99 en 100. Andere Linux: wat id laat zien. Docker Desktop op Windows en Mac: elke waarde werkt.

Naslag

Alle instellingen

Alle instellingen staan bovenaan docker-compose.yml. Verander de waarde en start het project opnieuw. Veel ervan kun je ook op de beheerpagina instellen, en die gaat dan voor. De twee kolommen tonen de standaardwaarde voor Docker thuis en voor de openbare server.

Server

InstellingThuisOpenbaarWat het doet
SRIDU_HOSTSleegleegIP-adressen of namen van de machine voor het https-certificaat, gescheiden door komma’s. Stel dit in voor de eerste start.
SRIDU_DOMAINn.v.t.je domeinAlleen deze naam en lokale adressen krijgen antwoord.
SRIDU_ADMIN_REMOTEn.v.t.offon = de beheerpagina opent ook via je domein, van overal. Alleen met een lang wachtwoord; een SSH-tunnel is veiliger.
SRIDU_LANGautoautoDe taal waarin iedereen begint: auto (die van de browser) of en, de, nl, fr, es, it, pt-BR, pl, hr.
SRIDU_INDEXn.v.t.onon: zoekmachines mogen de app opnemen.
SRIDU_ADMIN_REMOTEn.v.t.offon: de beheerpagina ook van buiten je thuisnetwerk. Niet aan te raden.
SRIDU_CF_ANALYTICSoffoffon: laat het script van Cloudflare Web Analytics laden (beveiligingsbeleid). Alleen als je Web Analytics voor je domein in Cloudflare hebt aangezet; vermeld het dan in je privacyverklaring.
SRIDU_NAMEleegleegNaam van de installatie in het browsertabblad en op de startpagina, bijvoorbeeld DC Bullseye. Leeg: Sridu. Logo, welkomsttekst en meer vind je op de beheerpagina onder Look & welcome.
SRIDU_ACCENTleegleegAccentkleur als #rrggbb, bijvoorbeeld #e11d48. Leeg: het Sridu-groen.
SRIDU_COUNTERSononGebruikscijfers voor het overzicht op de beheerpagina: app-starts, uitgespeelde potjes, pijlen en spelvormen per dag. Alleen totalen, geen cookies, apparaat-ID’s, namen of adressen.
SRIDU_PACKSonoffDe bibliotheek met geluidspakketten: de apps van deze server kunnen hier hun eigen geluiden en callerstemmen delen en die van elkaar installeren. off: er wordt niets op de server opgeslagen en de app toont geen bibliotheek. Wie mag delen en hoe groot een pakket mag zijn, stel je in op de beheerpagina onder Sound packs.
SRIDU_UPDATE_CHECKononElke zes uur, en wanneer je de beheerpagina opent, vraagt de server bij sridu.com of er een nieuwere versie is, en de beheerpagina laat die dan zien (Update). Een kaal verzoek zonder cookies of ID; er wordt niets gedownload of geïnstalleerd. off: geen controle.
PUID / PGID1000 / 10001026 / 100De gebruiker en groep waartoe de datamappen behoren.

Lobby

InstellingThuisOpenbaarWat het doet
SRIDU_LOBBYononDe open chat om tegenstanders te vinden.
SRIDU_LOBBY_MODElocallocallocal: de lobby van deze server. online: de Sridu online lobby op play.sridu.com, samen met iedereen daar (een andere server via SRIDU_LOBBY_ONLINE_URL). mesh: zonder server, via de brokers.
SRIDU_LOBBY_GUESTSn.v.t.onon: apps van andere installaties mogen in deze lobby. play.sridu.com heeft dat nodig; op je eigen server meestal off.
SRIDU_LOBBY_ROOMSoneoneone: één ruimte voor iedereen. lang: één ruimte per app-taal.
SRIDU_LOBBY_MAXn.v.t.2000Maximaal zoveel spelers tegelijk online.
SRIDU_LOBBY_PER_IPn.v.t.30Maximaal zoveel lobbyverbindingen vanaf één IP-adres. Een IPv6-adres telt per /64-blok.
SRIDU_CHAT_HISTORYn.v.t.50Chatregels die in het geheugen blijven voor nieuwkomers. Wordt nooit naar schijf geschreven.
SRIDU_REPORTSononon: spelers kunnen mensen en berichten in de lobby melden, en jij ziet de meldingen op de beheerpagina. Staat niet in het bestand; voeg de regel toe om het uit te zetten, of gebruik de beheerpagina.

Spelen en ranglijst

InstellingThuisOpenbaarWat het doet
SRIDU_CORRECT_CHALLENGESonoffMogen spelers pijlen corrigeren in de uur-challenges? Op een openbare server uit: wat de camera’s zagen, telt.
SRIDU_CORRECT_MINISonoffHetzelfde voor trainings- en opwarmspellen, alles met records. Partyspellen kun je altijd corrigeren.
SRIDU_JOIN_APPROVALoffonon: een apparaat van buiten het netwerk van de host vraagt eerst toestemming voordat het een sessie binnenkomt.
SRIDU_BOARDononDe ranglijst van de uur-challenges.
SRIDU_BOARD_STRICToffonon: alleen pijlen die de camera’s zagen tellen, geen correcties, niets ingetypt.
SRIDU_BOARD_TRAININGononTrainingsspellen tellen mee in de online ranglijst. off: hun records blijven op het apparaat.
SRIDU_BOARD_WARMUPononHetzelfde voor de opwarmspellen.
SRIDU_PROGRESSoffonon: spelerslevel, badges met meldingen in het spel, dagdoelen en looks om vrij te spelen (Levels & badges).
SRIDU_PROGRESS_DAILYononDe drie dagdoelen, alleen samen met SRIDU_PROGRESS.
SRIDU_PROGRESS_UNLOCKSononLooks om vrij te spelen, alleen samen met SRIDU_PROGRESS.
SRIDU_BOARD_DAYS9090Resultaten worden na zoveel dagen verwijderd (minimaal 35).

Probleemmeldingen

InstellingThuisOpenbaarWat het doet
SRIDU_BUG_REPORTSononon: spelers kunnen een probleemmelding direct naar de makers van Sridu sturen (play.sridu.com). off: alleen per e-mail of opgeslagen als bestand.
SRIDU_BUG_INBOXoffonOntvangt de meldingen van alle installaties. Alleen voor play.sridu.com; zet het op je eigen server op off.
SRIDU_BUG_DAYSn.v.t.90Ontvangen meldingen worden na zoveel dagen verwijderd (7–365).

Online potjes

InstellingThuisOpenbaarWat het doet
SRIDU_BROKERononDe eigen broker verbindt apparaten voor online potjes.
SRIDU_PUBLIC_BROKERSonoffon: openbare MQTT-servers helpen ook mee als je eigen server niet bereikbaar is.
SRIDU_STUNleeg (Google en Cloudflare)CloudflareWaar een apparaat zijn openbare adres opvraagt voor een directe verbinding.
SRIDU_TURN_HOSTleegleegOpenbare naam van je relay. Leeg: geen relay.
SRIDU_TURN_PORT34783478Poort van de relay.
SRIDU_TURN_URLSleegleegEen gehoste TURN-dienst in plaats van je eigen relay.
SRIDU_TURN_USER / _PASSsridu / leegsridu / leegInloggegevens van de relay. Zichtbaar voor elke bezoeker, ze houden alleen apps van vreemden buiten.

Vergelijken

De vier manieren naast elkaar

Alleen de bestandenDocker thuisOpenbare serverWebruimte
Camera’s, alle spelvormen, statistiekenJaJaJaJa
Telefoons en tablets in het netwerkNeeJaJaJa
Online potjesVia openbare serversJaJaVia openbare servers
BeheerpaginaNeeJaJaNee, wel de configurator
Eigen lobby en ranglijstNeeJaJaNee
Bereikbaar vanaf internetNeeNeeJaJa
Moeite5 minuten15 minutenEén avond10 minuten

Licentie: zelf hosten is gratis voor jou thuis en voor je club. Voor een café, een openbaar evenement of iets commercieels moet je eerst even contact opnemen, zie wie wat mag.