Een aantal jaar geleden zijn we overgestapt naar een infrastructure-as-code aanpak, waarin we het dependency-management principe, zoals ook gebruikt door maven, hebben verruimd naar de serverconfiguraties, databasestructuren, systeemkoppelingen en datasets. Met behulp van het Docker-platform is het nu mogelijk om voor iedere softwarerelease, databasepatch of omgevingsconfiguratiewijziging een nieuwe versie van een “omgevingsrecept” te genereren. Dit omgevingsrecept kan vervolgens in onze private Docker-cloud worden ingelezen, wat resulteert in de gewenste combinatie van servers, packages, software en configuratie “ergens in de cloud”. Naast het grote voordeel dat met deze aanpak het beheer is teruggebracht van zo’n 500 virtuele servers naar 10 omgevingsrecepten, biedt de aanpak de mogelijkheid om omgevingen alleen te laten bestaan als ze werkelijk nodig zijn. De continuous delivery pipeline creëert voor iedere stap zelf een nieuwe omgeving en ruimt deze weer op wanneer ze niet meer nodig is.