Docker
con Tommaso Patrizi
In linea con l’obiettivo di semplificare i processi e le azioni, proponiamo un corso Docker sulla nuova tecnologia emergente in materia di virtualizzazione e cloud.
Docker consente di assemblare un’applicazione e tutte le sue dipendenze in un’unità standardizzata per lo sviluppo del software. Scopo del corso di formazione è diffondere il più possibile la piattaforma negli ambienti di produzione.
I container Docker impacchettano un software in un filesystem completo che contiene tutto ciò che è necessario al software stesso per poter funzionare correttamente:
- codice
- runtime
- strumenti di sistema
- librerie di sistema
in pratica qualsiasi cosa che si possa installare in un server. Questo garantisce che il software funzionerà sempre allo stesso modo a prescindere dall’ambiente in cui si trova ad essere eseguito.
Si tratta della cosiddetta tecnologia di contaneirizzazione, che mette ordine nel caos rendendosi accessibile agli sviluppatori, consentendo un’evoluzione del formato container LXC integrato in Linux.
Dal punto di vista pratico questo consente di:
- rendere praticamente privo di sorprese il passaggio dei software dall’ambiente di sviluppo a quello di produzione
- rendere immediatamente operative su ogni progetto eventuali nuove risorse
- realizzare infrastrutture complesse anche nelle singole macchine di sviluppo
- rendere più produttivi perché ci si può concentrare sullo sviluppo del software
- rendere più facile la correzione di errori attraverso il rollback ad un container precedente
Tommaso Patrizi
Sviluppatore entusiasta in Ruby e Ruby on Rails, è alla costante ricerca di un codice semplice, bello ed efficace e del modo per scrivere il minor codice possibile per la piena soluzione di ogni problema. Aperto alle nuove tecnologie e alla collaborazione, ha spesso lavorato in piccoli team di sviluppo geograficamente distribuiti utilizzando Git, Test Driven Development, GIS, PostGIS, KML e Shapefiles. Fan di Docker, tecnologia che utilizza in produzione dalla versione 0.6.0, si sta avvicinando al linguaggio Haskell per rafforzare competenze matematiche e di programmazione funzionale.