ݺߣ

ݺߣShare a Scribd company logo
MEETUP
INTRODUZIONE A DOCKER
Antonio Di Motta
CHI SONO
Mi chiamo Antonio Di Motta e sono un software architect, mi occupo della
progettazione e sviluppo di progetti software complessi nel campo dei trasporti,
industria e media.
github.com/antdimot
twitter.com/dimotta
IL CONTESTO
Siamo nel mezzo di una nuova trasformazione digitale che coinvolge sia i team
di lavoro che il modo con cui si realizzano le applicazioni.
• Team agili, rilasci frequenti, controllo della sicurezza, riduzione dei costi delle
applicazioni legacy
• Muoversi da applicazioni giganti e monolitiche verso soluzioni ibride cloud/
microsevices.
• Avvicinando le due figure IT Operation e Developer (DevOps)
PERCHÉ DOCKER?
COSTRUIRE SOFTWARE MIGLIORE
• Sviluppatori più veloci
• Eliminazione delle inconsistenze legate agli ambienti
CONDIVIDERE E COLLABORARE
• Distribuire e condividere contenuti
• Semplificazione del processo di condivisione delle applicazioni
PROCESSO DI RILASCIO VELOCE E SCALABILE
• Dinamismo circa i cambiamenti e risoluzione dei problemi
• Scalare velocemente nel caso le esigenze di business cambiano
https://www.docker.com/products/overview
DOCKER VS VIRTUAL MACHINES
DOCKER CONTAINER
Un Container incapsula un pezzo di software in un completo filesystem che contiene tutto
quello che occorre per farlo funzionare: Codice, Runtime, Tool di sistema, Librerie di sistema.
LIGHTWEIGHT: Un container viene eseguita su una singola macchina con cui condivide il
kernel del sistema operativo.
OPEN: Un container parte istantaneamente e consuma meno Ram. Sono basati su standard
aperti e funzionano su ogni infrastruttura.
SECURE BY DEFAULT: le applicazioni sono isolate tra di loro e dall’infrastruttura
sottostante.
DOCKER: CONCETTI CHIAVE
Dockerfile è il punto di partenza per il processo di dockerizzazione. Contiene una
descrizione dettagliata della configurazione di una applicazione e delle risorse di cui
necessita.
Docker Image è creato via dockerfile tramite l’image builder. Si tratta di uno snapshot
dell’applicazione.
Docker Container è l’unità isolata in cui l’applicazione è impacchettata assieme alle librerie
e al codice binario.
Docker Engine è container runtime. Legge le immagini docker e avvia i container.
Docker Registry è il servizio dove le Docker Images vengono gestite e conservate in modo
sicuro.
A TUTTA CLI
$ docker <<COMMAND>> [OPTIONS]
// elenco delle docker images locali
$ docker images
// creazione e esecuzione di un docker container chiamato c1
$ docker run –-name c1 ubuntu /bin/echo hello world
$ docker stop/start –a c1
// elenco dei docker container
$ docker ps –a
// rimozione di un docker container
$ docker rm c1
// rimozione di una docker image
$ docker rmi ubuntu
DOCKER HUB
// autenticazione
$ docker login/logout
// elenco delle docker images locali
$ docker pull/push <<imagename>>
Funzionalità principali:
• Image repository
• Automate builds
• Webhooks
• Organizations
• Github e Bitbucket
DEMO

More Related Content

What's hot (20)

PDF
Docker Workshop - Coretech Summit 2018
Yefry Figueroa
PDF
Introduzione A Docker
Yefry Figueroa
PDF
Meetup ASP.NET Core 2 e Docker
dotnetcode
PPTX
.NET Core, ASP.NET Core e Linux per il Mobile
Pietro Libro
PDF
Omnis italianmeeting 2016-10-20
Romualdo Gobbo
PPTX
Introduzione pratica a docker, da chi lo ha appena conosciuto
Daniele Megna
PDF
Docker
Andrea Laspada
PPTX
Introduzione a Docker
Roberto Messora
PPTX
Da JavaScript a TypeScript
Roberto Messora
PPTX
Azure functions deep dive - Giorgio Di Nardo - Codemotion Rome 2017
Codemotion
PPTX
ASP.NET AND Azure Function
Luca Congiu
ODP
Un'Infrastruttura di Sviluppo Web Enterprise Distribuita Basata su Modelli Pa...
Natale Vinto
PDF
Mobile Development: una introduzione per Web Developers
sparkfabrik
PDF
Git/Continuous Integration/Docker: la terna dello sviluppo moderno.
Gerardo Di Iorio
PPTX
Pensiero Analogico e Microservizi
Consulthinkspa
PPTX
Real world Visual Studio Code
Roberto Messora
PPTX
Introduzione a docker
Antonio Liccardi
PDF
La rivoluzione dei Microservizi
italianaSoftware
PDF
Anatomia di un progetto open-source
Bergamo Linux Users Group
PDF
Applicazioni Serverless con AWS
sparkfabrik
Docker Workshop - Coretech Summit 2018
Yefry Figueroa
Introduzione A Docker
Yefry Figueroa
Meetup ASP.NET Core 2 e Docker
dotnetcode
.NET Core, ASP.NET Core e Linux per il Mobile
Pietro Libro
Omnis italianmeeting 2016-10-20
Romualdo Gobbo
Introduzione pratica a docker, da chi lo ha appena conosciuto
Daniele Megna
Introduzione a Docker
Roberto Messora
Da JavaScript a TypeScript
Roberto Messora
Azure functions deep dive - Giorgio Di Nardo - Codemotion Rome 2017
Codemotion
ASP.NET AND Azure Function
Luca Congiu
Un'Infrastruttura di Sviluppo Web Enterprise Distribuita Basata su Modelli Pa...
Natale Vinto
Mobile Development: una introduzione per Web Developers
sparkfabrik
Git/Continuous Integration/Docker: la terna dello sviluppo moderno.
Gerardo Di Iorio
Pensiero Analogico e Microservizi
Consulthinkspa
Real world Visual Studio Code
Roberto Messora
Introduzione a docker
Antonio Liccardi
La rivoluzione dei Microservizi
italianaSoftware
Anatomia di un progetto open-source
Bergamo Linux Users Group
Applicazioni Serverless con AWS
sparkfabrik

Viewers also liked (15)

PDF
MongoDB & Chirp
Antonio Di Motta
PPTX
Repaso 1 a unidad
Luciia Lg
PDF
Sika transparente 7 w
Angelly Rodríguez
PDF
Sairam_Industrial_Automation_Magazine_Artical_Pages
Sairam Vedam
DOC
CV 2017 QC
Keith Mackie
PPTX
Mi trabajo final
Laura Cecilia Sánchez
PPTX
Giv det videre - indsamling projekt 2017
LFF - Landsforeningen til bevaring af foto og film
PPTX
Finance Industry Innovations
Lina Waiganjo ACCA
PDF
ยุโรป - europe
Kunnai- เบ้
PPT
SahanavTechnologies
Sahanav Technologies
PDF
linkedIn resume photo 2.01.17
Aimée A. Mitchell
DOCX
Pat 2015 florentino
Oscar Serrano
PPT
PPT inclusión digital
aprenderaprender
PDF
Terdal_teaching_CV_2017
Dr. Erik Terdal
PPTX
Aspectos sobre la Búsqueda de información
Victor Jesus Palomino Flores
MongoDB & Chirp
Antonio Di Motta
Repaso 1 a unidad
Luciia Lg
Sika transparente 7 w
Angelly Rodríguez
Sairam_Industrial_Automation_Magazine_Artical_Pages
Sairam Vedam
CV 2017 QC
Keith Mackie
Mi trabajo final
Laura Cecilia Sánchez
Giv det videre - indsamling projekt 2017
LFF - Landsforeningen til bevaring af foto og film
Finance Industry Innovations
Lina Waiganjo ACCA
ยุโรป - europe
Kunnai- เบ้
SahanavTechnologies
Sahanav Technologies
linkedIn resume photo 2.01.17
Aimée A. Mitchell
Pat 2015 florentino
Oscar Serrano
PPT inclusión digital
aprenderaprender
Terdal_teaching_CV_2017
Dr. Erik Terdal
Aspectos sobre la Búsqueda de información
Victor Jesus Palomino Flores
Ad

Similar to Introduzione a Docker (20)

PDF
Introduzione a Docker (Maggio 2017) [ITA]
Valerio Radice
PDF
Docker vs Virtualizzazioni
Giuliano Latini
PDF
Introduzione a docker - DockerTutorial.it
Fabio Ros
PPTX
Docker Fudamentals
mvetro
PDF
Docker la rivoluzione nel deployment
Mauro Cicolella
PDF
Docker, la rivoluzione dei "container" del software
Carlo Reggiani
PDF
Introduzione a Docker (parte 2 - Pratica)
Cristian Consonni
PPTX
Google cloud: Big Data + docker = kubernetes
Giuliano Latini
PPTX
Microservizi & DevOps
Antonio Liccardi
PDF
Basta problemi-con-tensorflow-usando-docker-nvidia-docker
Nicola Landro
PPTX
Realizzazione di Microservizi con Docker, Kubernetes, Kafka e Mongodb
MongoDB
PPTX
Microservices webinar EMEA Aug. 2017
MongoDB
PDF
ASP.NET Core 2 e Docker
Luca Congiu
PPTX
Automation Night (Docker)
Giuliano Latini
PDF
Laravelday2018
Santo Caruso
PDF
Vagrant e Docker a confronto;scegliere ed iniziare
Daniele Mondello
PPTX
DevOps in a Microservices World
Antonio Liccardi
PPTX
ٴdz屹鲹Գ峦󾱳dzԱà徱ٱٴDZ𾱳𱹱DZ.ٳ
Giuliano Latini
PPTX
Livin' with Docker - dallo sviluppo alla produzione
giacomos
PPTX
DOCKER FROM ZERO TO HERO
Giuliano Latini
Introduzione a Docker (Maggio 2017) [ITA]
Valerio Radice
Docker vs Virtualizzazioni
Giuliano Latini
Introduzione a docker - DockerTutorial.it
Fabio Ros
Docker Fudamentals
mvetro
Docker la rivoluzione nel deployment
Mauro Cicolella
Docker, la rivoluzione dei "container" del software
Carlo Reggiani
Introduzione a Docker (parte 2 - Pratica)
Cristian Consonni
Google cloud: Big Data + docker = kubernetes
Giuliano Latini
Microservizi & DevOps
Antonio Liccardi
Basta problemi-con-tensorflow-usando-docker-nvidia-docker
Nicola Landro
Realizzazione di Microservizi con Docker, Kubernetes, Kafka e Mongodb
MongoDB
Microservices webinar EMEA Aug. 2017
MongoDB
ASP.NET Core 2 e Docker
Luca Congiu
Automation Night (Docker)
Giuliano Latini
Laravelday2018
Santo Caruso
Vagrant e Docker a confronto;scegliere ed iniziare
Daniele Mondello
DevOps in a Microservices World
Antonio Liccardi
ٴdz屹鲹Գ峦󾱳dzԱà徱ٱٴDZ𾱳𱹱DZ.ٳ
Giuliano Latini
Livin' with Docker - dallo sviluppo alla produzione
giacomos
DOCKER FROM ZERO TO HERO
Giuliano Latini
Ad

Introduzione a Docker

  • 2. CHI SONO Mi chiamo Antonio Di Motta e sono un software architect, mi occupo della progettazione e sviluppo di progetti software complessi nel campo dei trasporti, industria e media. github.com/antdimot twitter.com/dimotta
  • 3. IL CONTESTO Siamo nel mezzo di una nuova trasformazione digitale che coinvolge sia i team di lavoro che il modo con cui si realizzano le applicazioni. • Team agili, rilasci frequenti, controllo della sicurezza, riduzione dei costi delle applicazioni legacy • Muoversi da applicazioni giganti e monolitiche verso soluzioni ibride cloud/ microsevices. • Avvicinando le due figure IT Operation e Developer (DevOps)
  • 4. PERCHÉ DOCKER? COSTRUIRE SOFTWARE MIGLIORE • Sviluppatori più veloci • Eliminazione delle inconsistenze legate agli ambienti CONDIVIDERE E COLLABORARE • Distribuire e condividere contenuti • Semplificazione del processo di condivisione delle applicazioni PROCESSO DI RILASCIO VELOCE E SCALABILE • Dinamismo circa i cambiamenti e risoluzione dei problemi • Scalare velocemente nel caso le esigenze di business cambiano
  • 6. DOCKER VS VIRTUAL MACHINES
  • 7. DOCKER CONTAINER Un Container incapsula un pezzo di software in un completo filesystem che contiene tutto quello che occorre per farlo funzionare: Codice, Runtime, Tool di sistema, Librerie di sistema. LIGHTWEIGHT: Un container viene eseguita su una singola macchina con cui condivide il kernel del sistema operativo. OPEN: Un container parte istantaneamente e consuma meno Ram. Sono basati su standard aperti e funzionano su ogni infrastruttura. SECURE BY DEFAULT: le applicazioni sono isolate tra di loro e dall’infrastruttura sottostante.
  • 8. DOCKER: CONCETTI CHIAVE Dockerfile è il punto di partenza per il processo di dockerizzazione. Contiene una descrizione dettagliata della configurazione di una applicazione e delle risorse di cui necessita. Docker Image è creato via dockerfile tramite l’image builder. Si tratta di uno snapshot dell’applicazione. Docker Container è l’unità isolata in cui l’applicazione è impacchettata assieme alle librerie e al codice binario. Docker Engine è container runtime. Legge le immagini docker e avvia i container. Docker Registry è il servizio dove le Docker Images vengono gestite e conservate in modo sicuro.
  • 9. A TUTTA CLI $ docker <<COMMAND>> [OPTIONS] // elenco delle docker images locali $ docker images // creazione e esecuzione di un docker container chiamato c1 $ docker run –-name c1 ubuntu /bin/echo hello world $ docker stop/start –a c1 // elenco dei docker container $ docker ps –a // rimozione di un docker container $ docker rm c1 // rimozione di una docker image $ docker rmi ubuntu
  • 10. DOCKER HUB // autenticazione $ docker login/logout // elenco delle docker images locali $ docker pull/push <<imagename>> Funzionalità principali: • Image repository • Automate builds • Webhooks • Organizations • Github e Bitbucket
  • 11. DEMO

Editor's Notes

  • #5: ACCELERATE DEVELOPERS Stop wasting hours setting up developer environments, spinning up new instances, and making copies of production code to run locally. With Docker, you simply take copies of your live environment and run them on any new endpoint running a Docker engine. EMPOWER CREATIVITY The isolation capabilities of Docker containers free developers from constraints: they can use the best language and tools for their application services without worrying about causing internal tooling conflicts. ELIMINATE ENVIRONMENT INCONSISTENCIES Packaging an application in a container with its configs and dependencies guarantees that the application will always work as designed in any environment: locally, on another machine, in test or production. No more worries about having to install the same configurations into different environments. DISTRIBUTE & SHARE CONTENT Store, distribute, and manage Docker images in Docker Hub with your team. Image updates, changes, and history are automatically shared across your organization. SIMPLY SHARE YOUR APPLICATION WITH OTHERS Ship containers without worrying about environment dependencies creating issues for your application. Other teams can easily link to or test against your app without having to learn about how it works. QUICKLY SCALE Docker containers spin up and down in seconds, making it easy to scale application services to satisfy peak customer demand, and then reduce running containers when demand ebbs. EASILY REMEDIATE ISSUES Docker makes it easy to identify issues, isolate the problem container, quickly roll back to make the necessary changes, and then push the updated container into production. Isolation between containers makes these changes less disruptive than in traditional software models.
  • #7: vIRTUAL MACHINES Virtual machines include the application, the necessary binaries and libraries, and an entire guest operating system -- all of which can amount to tens of GBs. CONTAINERS Containers include the application and all of its dependencies --but share the kernel with other containers, running as isolated processes in user space on the host operating system. Docker containers are not tied to any specific infrastructure: they run on any computer, on any infrastructure, and in any clouD.