Wat we ermee bouwen

Alles wat we schrijven wordt als container verpakt. Een backendservice, een geplande taak, een buildomgeving — elk daarvan is een image met de afhankelijkheden erin vastgezet, zodat "het werkt op mijn machine" geen bugcategorie meer is.

Het praktische voordeel duikt op zodra iemand nieuw bij een project komt. In plaats van een installatiedocument dat een half jaar achterloopt is er een compose-bestand: één commando start de service, de database en de afhankelijkheden, in de versies die het project werkelijk gebruikt.

Waar we het hebben ingezet

Al ons backendwerk draait in containers, inclusief de services achter de projecten in ons portfolio. Ook deze site wordt als container-image gebouwd en uitgerold.

Wanneer we het aanraden

Voor elke service die ergens anders wordt uitgerold dan op de machine waarop hij is geschreven — dat zijn ze allemaal. De kosten zijn een Dockerfile; de opbrengst is een reproduceerbare build en een uitrolproces dat niet afhangt van de staat van een server.

Waar we wél tegenin gaan, is een lokale ontwikkelworkflow die al eenvoudig is in een container stoppen. Is een project één binary zonder afhankelijkheden, dan voegt een container rond het lokale ontwikkelen vooral wrijving toe. Lever het image uit; ontwikkel er niet per se in.

In productie draaien die images op Kubernetes.