Docker Engine v29 ha lasciato a terra metà dell'ecosistema homelab. Non per un bug. Non per un incidente. Per scelta deliberata. E il bello è che ci hanno messo 14 release in quattro mesi per capire che forse avevano esagerato.

14 release in 4 mesi. Qualcosa non torna.
Docker Engine v29.0.0 esce il 10 novembre 2025. Docker lo chiama "foundational release" — la base della piattaforma container di prossima generazione. Suona bene. Peccato che dal 10 novembre al 5 marzo 2026 servano 14 release per rattoppare quello che la "fondazione" ha rotto. Una ogni 8-9 giorni. Non è esattamente il ritmo di chi ha le idee chiare.
I cambiamenti di rottura sono tre, e sono tutti grossi.
- API minima innalzata a v1.44 (Docker 25.0+). Qualunque client con API v1.43 o inferiore viene rifiutato secco. Nessun periodo di grazia, nessun warning. Il vostro Portainer vecchio di sei mesi? Morto. Lo script Ansible con community.docker? KeyError ApiVersion, buonanotte.
- Containerd image store diventa default per le nuove installazioni. I legacy graph drivers (overlay2) sono deprecati. Lo storage containerd occupa più spazio disco — doppio formato layer — e cambia la semantica degli Image ID: da config digest platform-specific a manifest index digest. Traduzione: la vostra CI/CD che confronta hash di immagini si rompe senza preavviso.
- Supporto nftables sperimentale opt-in. Non compatibile con Docker Swarm. Richiede IP forwarding manuale. La catena DOCKER-USER va migrata. Se avevate regole firewall custom — e chi gestisce un homelab le ha — preparatevi a riscriverle.
Ah, e un dettaglio che non leggerete nel changelog Docker: containerd v2.1.5, rilasciato nello stesso periodo, ha cambiato il limite file descriptor da 1.048.576 a 1.024. Da un milione a mille. Ci ho messo due ore a capire perché i miei container con database si rifiutavano di partire.




