Journal-indexDockup / praktijknotitie
Note / self-host-it-tools

IT Tools zelf hosten in 2026: TLS, stateless deployments en updates

Een praktische handleiding voor het zelf hosten van IT Tools, met aandacht voor Docker, poorten, persistente data, TLS, beveiliging, back-ups en problemen die productiegebruik in de weg staan. Inclusief controles.

IT Tools zelf hosten wordt interessant bij de eerste redeploy, niet bij de eerste docker run. Als de proxy naar de verkeerde containerpoort verwijst of een oude application shell cachet, kan Docker nog steeds een perfect gezond proces rapporteren. De onderstaande deployment is georganiseerd rond observeerbaar gedrag: laad de interface, genereer een hash, decodeer een JWT en gebruik één converter terwijl de browser geen netwerkverbinding meer heeft nadat de assets zijn gecachet.

Het beoogde gebruik van IT Tools is duidelijk: een verzameling hashes, converters, generators en developer utilities. Die omschrijving laat zien wat publiek toegankelijk moet blijven, wat privé moet blijven en wat een back-up moet kunnen reconstrueren.

Scheid IT Tools van zijn dependencies

Begin met de network namespace van IT Tools: de weblistener gebruikt poort 80, niet een hostpoort die je uit een laptoptutorial hebt overgenomen. De standaardbuild van IT Tools heeft geen database of aparte persistente runtime-service nodig. Houd de webcontainer vervangbaar en plaats eventuele toekomstige authenticatie-, samenwerkings- of storagecomponenten achter een afzonderlijk gedocumenteerde grens.

Voer nadat aan de vereiste is voldaan het volledige scenario uit — laad de interface, genereer een hash, decodeer een JWT en gebruik één converter terwijl de browser geen netwerkverbinding meer heeft nadat de assets zijn gecachet. Leg logs en metingen vast voor browsergeheugen aan de clientzijde, de levering van statische assets en de afwezigheid van database- of queuewerk aan de serverzijde. Dat bewijs vormt de eerste bekende goede architectuur en maakt latere verplaatsingen tussen Dockup compute en een gekoppelde server testbaar.

Bouw een vervangbare IT Tools-container

Een minimaal commando is nuttig wanneer het laat zien wat het platform later zal beheren.

docker run -d \
  --name it-tools \
  --restart unless-stopped \
  -p 127.0.0.1:80:80 \
  corentinth/it-tools:latest

Hier blijft poort 80 privé voor de host en is elk vereist pad expliciet. Controleer de lokale vereiste voordat je de service blootstelt: geen database, alleen een kleine webcontainer. Controleer het opstarten met zowel logs als het applicatiespecifieke bewijs: laad de interface, genereer een hash, decodeer een JWT en gebruik één converter terwijl de browser geen netwerkverbinding meer heeft nadat de assets zijn gecachet. Zet de imageversie na verificatie vast, zodat een reguliere vervanging het gedrag niet ongemerkt verandert.

TLS is eenvoudig; gegenereerde URL's niet

De publieke grens voor IT Tools moet bestaan uit één canonieke hostname, automatische TLS en één intern doel op poort 80. Routeer de statische webapplicatie via HTTPS, zodat clients teruggaan naar een adres dat de service herkent.

Als de acceptatietransactie mislukt, classificeer dan de eerste fout. Problemen met DNS, certificaten en 502 horen thuis in de TLS-validatiechecklist. De situatie “de proxy verwijst naar de verkeerde containerpoort of cachet een oude application shell” hoort aan de applicatiekant thuis, nadat een request IT Tools succesvol heeft bereikt.

Volumes zijn slechts de eerste herstel-laag

Herstel van stateless IT Tools is een oefening in reproduceerbaarheid. Bewaar geen serverdata; houd de deploymentconfiguratie bij; de writable containerlaag mag niets bevatten wat na vervanging nodig is.

Gebruik de vastgezette image en de gecontroleerde configuratie om IT Tools opnieuw op te bouwen op lege compute. De oefening slaagt wanneer een verse container dezelfde toolset reproduceert, omdat er geen user state aan de serverzijde is om te herstellen. Volg de Git-to-production-deploymentworkflow voor het vervangbare artefact, terwijl elke optionele externe service een afzonderlijke back-upprocedure behoudt.

Documenteer de exacte digest en de input voor de acceptatietest. Zo kan een operator onderscheid maken tussen een regressie in de applicatie en ontbrekende state, en voorkom je dat je een ceremonieel volume koppelt dat IT Tools nooit uitleest.

Sluit tijdelijke toegang voor de setup af

De beveiliging van stateless IT Tools begint bij supply-chain- en ingresscontroles, niet bij een fictieve accountinstelling. Ga er niet van uit dat tools in de browser ervoor zorgen dat geplakte secrets veilig zijn op een onbetrouwbare host. De beoogde grens is het serveren van een vertrouwde upstream-image en gebruikers eraan herinneren dat zelf hosten een gecompromitteerde browser niet betrouwbaar maakt.

Serveer IT Tools vanuit een vertrouwde, vastgezette image, voeg platformauthenticatie toe als het publiek beperkt is en stel alleen poort 80 via HTTPS bloot. Stel resource- en requestlimieten in rond browsergeheugen aan de clientzijde, de levering van statische assets en de afwezigheid van database- of queuewerk aan de serverzijde. Omdat er in deze baseline geen ingebouwd secret bestaat, houd je het toegangsbeleid in de routeconfiguratie en test je het vanaf een niet-geautoriseerde client.

Oefen de risicovolle wijziging aan IT Tools

Monitor gedrag, niet alleen het proces: laad de interface, genereer een hash, decodeer een JWT en gebruik één converter terwijl de browser geen netwerkverbinding meer heeft nadat de assets zijn gecachet. De omliggende signalen voor druk zijn browsergeheugen aan de clientzijde, de levering van statische assets en de afwezigheid van database- of queuewerk aan de serverzijde. Voer die controle uit na het opstarten en volgens een schema dat de service niet kan overbelasten.

Een update mag pas worden gepromoveerd nadat is getest dat een image-update client-side algorithms of dependencies kan wijzigen. Zet daarom de build die gevoelige input verwerkt vast en verifieer deze. Gebruik een parallelle candidate, vastgezette digests en bekende inputs; deze base image heeft geen schemamigratie die je hoeft te oefenen. Als de proxy naar de verkeerde containerpoort verwijst of een oude application shell cachet, vergelijk je beide versies voordat je ingress aanpast of storage toevoegt.

Leg een bekende goede IT Tools-deployment vast

Maak first-user-verkeer niet tot de acceptatietest voor IT Tools. Bereid ongevaarlijke voorbeeldstate voor en voer de volledige actie uit: “laad de interface, genereer een hash, decodeer een JWT en gebruik één converter terwijl de browser geen netwerkverbinding meer heeft nadat de assets zijn gecachet”. Noteer de exacte publieke URL, het resultaat, de imagereferentie en het loginterval die bij de run horen.

Vervang de container en herhaal dit zonder data opnieuw op te bouwen. Herstel vervolgens naar een lege host; de herstelvoorwaarde is dat een verse container dezelfde toolset reproduceert, omdat er geen user state aan de serverzijde is om te herstellen. Observeer bij elke run het browsergeheugen aan de clientzijde, de levering van statische assets en de afwezigheid van database- of queuewerk aan de serverzijde, en definieer een alert rond verslechtering van de transactie in plaats van rond metrics van een inactieve container.

Eén laatste controle moet expres mislukken: dien ongevaarlijke input in rond de resource- of formatlimiet die bij deze grens hoort: de proxy verwijst naar de verkeerde containerpoort of cachet een oude application shell. Controleer of het resulterende IT Tools-bericht de relevante grens identificeert, in plaats van dataverwijdering of een eindeloze restart te veroorzaken. Herstel de geldige toestand en bevestig dat dezelfde voorbeeldtransactie slaagt. Houd deze korte oefening in de releasechecklist.

Een Dockup-deployment heeft nog steeds een IT Tools-acceptatietest nodig

Dockup kan de vastgezette IT Tools-image deployen naar Dockup compute of naar een server die de klant koppelt, de publieke hostname naar poort 80 routeren en automatisch TLS uitgeven. De standaardcontainer heeft geen applicatiedatabase, dus Dockup moet geen betekenisloos datavolume koppelen om alleen maar een stateful template na te bootsen.

Routeer de statische webapplicatie na de deployment via HTTPS. Dockup moet de runtime-instellingen van IT Tools behouden, terwijl de operator deze lokale vereiste bevestigt: geen database, alleen een kleine webcontainer. Voer de controle met bekende output uit: laad de interface, genereer een hash, decodeer een JWT en gebruik één converter terwijl de browser geen netwerkverbinding meer heeft nadat de assets zijn gecachet. Als er later custom fonts, authenticatie, samenwerking of configuratie worden toegevoegd, declareer die componenten en hun state dan expliciet in plaats van ze onder te brengen in de stateless webimage. Zo blijft een one-click-deployment eerlijk over wat Dockup beheert en wat IT Tools zelf daadwerkelijk opslaat.

Veelgestelde vragen

Wat heeft IT Tools nodig voor een production deployment?

Routeer de IT Tools-container op poort 80 via één HTTPS-origin. De standaardbuild van IT Tools heeft geen database of aparte persistente runtime-service nodig. Verklaar IT Tools pas klaar wanneer je de interface kunt laden, een hash kunt genereren, een JWT kunt decoderen en één converter kunt gebruiken terwijl de browser geen netwerkverbinding meer heeft nadat de assets zijn gecachet.

Welke IT Tools-data hoort in een back-up?

De standaard IT Tools-image heeft geen vereiste mount voor applicatiedata. Bewaar de deploymentconfiguratie en maak afzonderlijk een back-up van verbonden state; het herstel slaagt wanneer een verse container dezelfde toolset reproduceert, omdat er geen user state aan de serverzijde is om te herstellen.

Heeft IT Tools HTTPS nodig achter een reverse proxy?

Gebruik HTTPS voor de publieke IT Tools-origin en houd poort 80 op de interne route. Pas de IT Tools-instelling correct toe: routeer de statische webapplicatie via HTTPS. Voor IT Tools beschermt HTTPS credentials of user content tijdens transport en houdt het origingevoelig clientgedrag consistent.

Hoe moet een IT Tools-upgrade worden getest?

Deploy de candidate IT Tools-image naast de huidige versie en herhaal de acceptatietransactie met bekende input. Let hier extra op, omdat een image-update client-side algorithms of dependencies kan wijzigen. Zet daarom de build die gevoelige input verwerkt vast en verifieer deze. De standaardcontainer heeft geen datamigratie, dus bewaar de vorige digest totdat de output- en compatibiliteitscontroles slagen.