Sono passate solo alcune settimane dal quarto anniversario di Docker, brand divenuto ormai sinonimo della tecnologia che sembra aver conquistato il mondo IT, ovvero i container. Se alcuni esperti sono arrivati a considerarli il futuro dell’IT, nel 2013 la situazione era completamente differente. Utilizzando una frase spesso abusata, possiamo dire che ai tempi nessuno pensava che il progetto di una certa dotCloud, basato sulla tecnologia di containerizzazione LXC, avrebbe avuto tale successo offrendo all’industria una valida alternativa alle macchine virtuali.
Il post di oggi è una breve retrospettiva dedicata al quadrienno 2013-2017 di Docker. Buona lettura.
Da dotCloud a Docker
Il primo video dimostrativo di Docker (progetto open source) risale a marzo 2013 quando Solomon Hykes (“futuro” fondatore di Docker ed attuale CTO della compagnia) si cimentò presso la PyCon (Python Convention) nello speech “Il futuro dei container Linux” – ora molti pensano che debba essere collocato in un ipotetico museo della storia dei computer. Il progetto si basava come già detto su LXC (sostituito in un secondo momento con la runtime originale libcontainer) e suscitò un certo interesse nella platea. Il grande momento non era tuttavia ancora arrivato.
E’ con il cambio di nome (da dotCloud a Docker nell’ottobre 2013) ed una sempre maggiore rilevanza commerciale che inizia l’ascesa. I risultati arrivano a meno di un anno dalla nascita della startup e consacrano rapidamente Docker come uno dei principali trend dell’industria IT. All’importante accordo con Red Hat (settembre 2013) seguono la partnership con Microsoft (ottobre 2014) e l’arrivo dei servizi container su EC2 (novembre 2014)
Tutti sembrano voler salire sul carro dei container: Red Hat inizia a lavorare su una piattaforma per l’hosting di container Docker, Microsoft annuncia l’arrivo di Docker su Windows (compatibilità) e Google presenta il progetto open source Kubernetes, un “orchestratore” di container pensato per gestire su larga scala numerosi cluster di container Docker.
L’ecosistema è nato
Ben presto si crearono immancabili attriti tra la startup ed gli altri vendor. Come spesso accade quando si ha a che fare ad una potenziale miniera d’oro, ciascuno cercò di plasmare a proprio vantaggio le modalità d’impiego della tecnologia. Per Docker l’unica possibilità contemplata era quella di realizzare il proprio stack software e procedere autonomamente allo sviluppo dell’ecosistema. Per i vendor, i container dovevano invece essere “liberamente” affiancabili ad altre soluzioni come Kubernetes (Red Hat) o utilizzabili nella variante offerta dalla propria piattaforma (Amazon con il servizio menzionato in precedenza).
Il punto di non ritorno sembra giungere nell’estate del 2016 quando Docker annuncia l’implementazione di Swarm, la propria soluzione di orchestrazione, nell’omonima piattaforma container. In questo modo l’ex startup riduce notevolmente lo spazio di manovra dei soggetti di terze parti ed inizia ad aleggiare anche lo spettro della scissione dal progetto originario (fork in gergo), uno scenario che poi non si concretizzerà ma porterà Red Hat a presentare ufficialmente OCID (Open Container Initiative Daemon), considerato da alcuni come un fork parziale di Docker.
Relativa calma
Sono state le intelligenti mosse di Docker a stabilizzare una situazione potenzialmente esplosiva per l’intero ecosistema. Prima di tutto la pubblicazione del codice sorgente di alcuni dei componenti alla base della tecnologia (core elements) mediante donazione alla Cloud Native Computing Foundation (marzo 2017) – uno dei tanti progetti collaborativi della Linux Foundation lanciato nel 2015 e tra i cui founder rientrano Google, VMware, Univa, Cisco, IBM, Twitter e la stessa Docker. In questo modo è stata garantita la compatibilità di soluzioni di terze parti con il framework Docker, elemento sul quale l’azienda continuerà a basarsi pur portando avanti lo propria visione della piattaforma container.
In secondo luogo la scelta di rendere personalizzabile lo stack software nessario per il deploy di container in produzione. Ciò ha riaperto le porte a piattaforme di terze parti per il deploy e la gestione dei container concedendo ampia libertà di scelta agli utenti.
In conclusione: attualmente permane la divisione interna tra “Docker” ed “altri vendor” ma i recenti avvenimenti hanno permesso di giungere ad una situazione di perfetto (o quasi) equilibrio. Nel mentre i container acquisiscono sempre più importanza e sembrano destinati, per alcuni, a scrivere la prossima pagina dei paradigmi architetturali nel cloud.
Fonte: 1