Server (linux)
Op dit moment is de server een 2CPU 4GB Virtual private server (VPS), een licht dingetje dus. De schijf is momenteel 120GB groot en is het eerste wat te klein zal blijken (elke taxonomie wordt minstens driemaal op schijf gezet in diverse vormen.)
De belangrijkste directorie is /app, hierin staat de toolkit, wordt de viewer gebouwd, staan de nta-regels, de uitgepakte taxonomie-aanleveringen en deze documentatie.
Het OS is Debian (linux).
Omdat de toolkit een tijd als een non-root Docker heeft gedraaid maakt dat er veel in de tmp directorie wordt geschreven. Dit zal op enkele punten nog worden aangepast.
In /var/www/html staan alle bestanden die als statische content kan worden uitgeserveerd. Dit zijn de validatierapporten, de nta-regels en ook de taxonomie-viewer. Deze wordt vanuit de app-directorie gebouwd en als statische content weggeschreven (html, javascript, css en afbeeldingen).
Op de achtergrond wordt tweemaal per dag gecontroleerd of het SSL-certificaat van de webserver nog geldig is. Zo niet dan wordt er bij Letsencrypt een nieuw certificaat aangevraagd en wordt de nginx herstart.
Database
Om de taxonomie-viewer te kunnen gebruiken is een database noodzakelijk. Op de server draait een Postgres databaseserver waar weinig aan getuned is.
Updates
Security-updates worden automatisch geinstalleerd, overige upgrades moeten handmatig worden uitgevoerd
sudo apt update
sudo apt upgrade
Opruimen
Zipfiles worden naar /tmp ge-upload en uitgepakt. Pas daarna worden ze in de local taxonomy directory geplaatst. Het kan geen kwaad zo af en toe /tmp op te schonen.
bestandslocaties
In de directory /app staan de applicaties die nodig zijn om de XBRL Toolkit volledig te kunnen gebruiken
- /app/kenniscentrumxbrl De pythonapplicatie die parsed, opslaat, valideert en API-server is
- /app/nessie-quasar De frontend voor Nessie, Vue.js applicatie
- /app/nta-taxonomy-regels De NTA Regels, website en admin-site voor de NTA Regels
- /app/nta-validation-reports Tijdens de validatie worden er rapporten geschreven. Optioneel kan je deze met behulp van git synchroniseren, wordt momenteel ninet gebruikt.
- /app/taxonomies In deze directory staan de uitgepakte zipfiles
- /app/toolkit-documentation Hier staan de bestanden benodigd voor het updaten van de documentatie
Verder, statische content wordt vanuit /var/www/html geserveerd. Hoe je bijv. de NTA Regels op die locatie krijgt wordt verderop uitgelegd. Tot slot, in /var/cache wordt de o zo belangrijke cache voor nginx en goaccess gebufferd.