SlideShare a Scribd company logo
FABRIZIO BERNABEI
@bernabei
GIUSEPPE RIOLO
.NET & Linux: la strana coppia
#DOTNETDAY2018 1
Grazie ai nostri sponsor …
#DOTNETDAY2018 2
… ed a tutti voi !
#DOTNETDAY2018 3
.NET Core: Dove e quando voglio…
Windows, Linux, macOS
 Framework multi piattaforma
• SDK*
• Runtime*
• SignalR*
• (.NET Core 2.1-preview)
 Strumenti di sviluppo
• Visual Studio Code
#DOTNETDAY2018 4
ASP.NET Core SignalR (.NET Core Preview)
 Libreria che permette di aggiungere funzionalità real-time ad applicazioni
 Permette a codice server-side di chiamare codice JS sui client connessi
 Gestione automatica della connesione
 Connessione tra client e server persistente, a differenza di HTTP
 Open Source (analogamente a .NET Core)
#DOTNETDAY2018 5
Hello World SignalR…
 Creazione app web ASP.NET Core
 Creazione hub SignalR per eseguire il push dei dati ai client
 Utilizzo libreria SignalR JS per invio messaggi e visualizzazione
aggiornamenti
 Esempi di deploy
#DOTNETDAY2018 6
#DOTNETDAY2018 7
Deploy .NET Core App
#DOTNETDAY2018 8
 Deploy muti-target: stesso codice, diverse piattaforme
 Windows
 Linux
 Docker
 MacOS
 Windows Azure
 Amazon AWS
Deploy Linux
#DOTNETDAY2018 9
 Applicazione eseguita dalla runtime .NET Core
 Segue le regole della distribuzione della distro linux
 APT (Advanced Packaging Tool) @ Debian
 Yum (Yellow dog Updater, Modified) @ Fedora, Red Hat, CentOS
 Pacman @ Arch Linux
 Viene eseguita mediante il gestore di servizi di sistema
 Systemctl
 init
#DOTNETDAY2018 10
Deploy Docker
#DOTNETDAY2018 11
 Docker: tra la macchina virtuale e l’applicazione
 Creazione di un’immagine
 Gestione dei file
 Configurazione delle porte
 Mounting dei volumi
 Avvio di container a partire da un immagine
 Da un’immagine possono essere avviate più istanze (container)
 Ogni container è indipendente da ogni altro
#DOTNETDAY2018 12
#DOTNETDAY2018 13
source: https://github.com/bernabei/dotnetday2018-chat-demo

More Related Content

What's hot

Angular e asp.net core: un framework sul framework
Angular e asp.net core: un framework sul frameworkAngular e asp.net core: un framework sul framework
Angular e asp.net core: un framework sul framework
Michele Aponte
 
CruiseControl.net in un progetto reale
CruiseControl.net in un progetto realeCruiseControl.net in un progetto reale
CruiseControl.net in un progetto reale
DotNetMarche
 
.NET Core, ASP.NET Core e Linux per il Mobile
.NET Core, ASP.NET Core e Linux per il Mobile.NET Core, ASP.NET Core e Linux per il Mobile
.NET Core, ASP.NET Core e Linux per il Mobile
Pietro Libro
 
Blazor per uno sviluppatore Web Form
Blazor per uno sviluppatore Web FormBlazor per uno sviluppatore Web Form
Blazor per uno sviluppatore Web Form
Andrea Dottor
 
Windows Phone 7.5 Refresh: Performance e localizzazione
Windows Phone 7.5 Refresh: Performance e localizzazioneWindows Phone 7.5 Refresh: Performance e localizzazione
Windows Phone 7.5 Refresh: Performance e localizzazioneMatteo Pagani
 
Meetup DotNetCode Settembre 2018 - ASP.NET Core 2.1
Meetup DotNetCode Settembre 2018 - ASP.NET Core 2.1Meetup DotNetCode Settembre 2018 - ASP.NET Core 2.1
Meetup DotNetCode Settembre 2018 - ASP.NET Core 2.1
dotnetcode
 
Mobile Development: una introduzione per Web Developers
Mobile Development: una introduzione per Web DevelopersMobile Development: una introduzione per Web Developers
Mobile Development: una introduzione per Web Developers
sparkfabrik
 
Meetup DotNetCode A.I. Bot Framework and Azure Functions
Meetup DotNetCode A.I. Bot Framework and Azure FunctionsMeetup DotNetCode A.I. Bot Framework and Azure Functions
Meetup DotNetCode A.I. Bot Framework and Azure Functions
dotnetcode
 
Lavorare con applicazioni Brownfield: il caso di 39x27.com
Lavorare con applicazioni Brownfield: il caso di 39x27.comLavorare con applicazioni Brownfield: il caso di 39x27.com
Lavorare con applicazioni Brownfield: il caso di 39x27.com
Simone Chiaretta
 

What's hot (9)

Angular e asp.net core: un framework sul framework
Angular e asp.net core: un framework sul frameworkAngular e asp.net core: un framework sul framework
Angular e asp.net core: un framework sul framework
 
CruiseControl.net in un progetto reale
CruiseControl.net in un progetto realeCruiseControl.net in un progetto reale
CruiseControl.net in un progetto reale
 
.NET Core, ASP.NET Core e Linux per il Mobile
.NET Core, ASP.NET Core e Linux per il Mobile.NET Core, ASP.NET Core e Linux per il Mobile
.NET Core, ASP.NET Core e Linux per il Mobile
 
Blazor per uno sviluppatore Web Form
Blazor per uno sviluppatore Web FormBlazor per uno sviluppatore Web Form
Blazor per uno sviluppatore Web Form
 
Windows Phone 7.5 Refresh: Performance e localizzazione
Windows Phone 7.5 Refresh: Performance e localizzazioneWindows Phone 7.5 Refresh: Performance e localizzazione
Windows Phone 7.5 Refresh: Performance e localizzazione
 
Meetup DotNetCode Settembre 2018 - ASP.NET Core 2.1
Meetup DotNetCode Settembre 2018 - ASP.NET Core 2.1Meetup DotNetCode Settembre 2018 - ASP.NET Core 2.1
Meetup DotNetCode Settembre 2018 - ASP.NET Core 2.1
 
Mobile Development: una introduzione per Web Developers
Mobile Development: una introduzione per Web DevelopersMobile Development: una introduzione per Web Developers
Mobile Development: una introduzione per Web Developers
 
Meetup DotNetCode A.I. Bot Framework and Azure Functions
Meetup DotNetCode A.I. Bot Framework and Azure FunctionsMeetup DotNetCode A.I. Bot Framework and Azure Functions
Meetup DotNetCode A.I. Bot Framework and Azure Functions
 
Lavorare con applicazioni Brownfield: il caso di 39x27.com
Lavorare con applicazioni Brownfield: il caso di 39x27.comLavorare con applicazioni Brownfield: il caso di 39x27.com
Lavorare con applicazioni Brownfield: il caso di 39x27.com
 

Similar to .NET & Linux: la strana coppia - DotNetDay 2018

ASP.NET Core Services e Linux per il Mobile - Pietro Libro - Codemotion Rome...
ASP.NET Core Services e Linux per il Mobile  - Pietro Libro - Codemotion Rome...ASP.NET Core Services e Linux per il Mobile  - Pietro Libro - Codemotion Rome...
ASP.NET Core Services e Linux per il Mobile - Pietro Libro - Codemotion Rome...
Codemotion
 
Le basi per lo sviluppo su Windows Phone tool, SDK, il primo progetto
 Le basi per lo sviluppo su Windows Phone tool, SDK, il primo progetto Le basi per lo sviluppo su Windows Phone tool, SDK, il primo progetto
Le basi per lo sviluppo su Windows Phone tool, SDK, il primo progetto
Microsoft Mobile Developer
 
Meetup ASP.NET Core 2 e Docker
Meetup ASP.NET Core 2 e Docker Meetup ASP.NET Core 2 e Docker
Meetup ASP.NET Core 2 e Docker
dotnetcode
 
ASP.NET Core 2 e Docker
ASP.NET Core 2 e DockerASP.NET Core 2 e Docker
ASP.NET Core 2 e Docker
Luca Congiu
 
Da DotNet a DotNetCore
Da DotNet a DotNetCoreDa DotNet a DotNetCore
Da DotNet a DotNetCore
Raffaele Rialdi
 
Il futuro di Windows Phone
Il futuro di Windows PhoneIl futuro di Windows Phone
Il futuro di Windows Phone
Matteo Pagani
 
Real world Visual Studio Code
Real world Visual Studio CodeReal world Visual Studio Code
Real world Visual Studio Code
Roberto Messora
 
Meetup ASP.NET Core e Kubernetes
Meetup ASP.NET Core e KubernetesMeetup ASP.NET Core e Kubernetes
Meetup ASP.NET Core e Kubernetes
dotnetcode
 
Intel AppUp Webinar Italiano html5
Intel AppUp Webinar Italiano html5Intel AppUp Webinar Italiano html5
Intel AppUp Webinar Italiano html5
Intel Developer Zone Community
 
Back to the Future: Migrare da WebForm ad ASP.NET Core gradualmente
Back to the Future: Migrare da WebForm ad ASP.NET Core gradualmente Back to the Future: Migrare da WebForm ad ASP.NET Core gradualmente
Back to the Future: Migrare da WebForm ad ASP.NET Core gradualmente
Andrea Dottor
 
SkyMedia: La tecnologia al servizio dell'intrattenimento
SkyMedia: La tecnologia al servizio dell'intrattenimentoSkyMedia: La tecnologia al servizio dell'intrattenimento
SkyMedia: La tecnologia al servizio dell'intrattenimento
Mavigex srl
 
Continuous Integration e High Quality Code
Continuous Integration e High Quality CodeContinuous Integration e High Quality Code
Continuous Integration e High Quality Code
Daniele Mondello
 
Swagger per tutti
Swagger per tuttiSwagger per tutti
Swagger per tutti
Nicolò Carandini
 
Introduzione a .Net Core
Introduzione a .Net CoreIntroduzione a .Net Core
Introduzione a .Net Core
Antonio Di Motta
 
Exploring VS Code
Exploring VS CodeExploring VS Code
Exploring VS Code
dotnetcode
 
Costruire applicazioni-cross-platform-con-xamarin-visual-studio-2013
Costruire applicazioni-cross-platform-con-xamarin-visual-studio-2013Costruire applicazioni-cross-platform-con-xamarin-visual-studio-2013
Costruire applicazioni-cross-platform-con-xamarin-visual-studio-2013
Luca Zulian
 
Are you a Gadgeteer? - NetMF@Work
Are you a Gadgeteer? - NetMF@WorkAre you a Gadgeteer? - NetMF@Work
Are you a Gadgeteer? - NetMF@Work
Mirco Vanini
 
Gam05 costruisci il tuo antifurto perfetto con kinect e gli azure mobile se...
Gam05   costruisci il tuo antifurto perfetto con kinect e gli azure mobile se...Gam05   costruisci il tuo antifurto perfetto con kinect e gli azure mobile se...
Gam05 costruisci il tuo antifurto perfetto con kinect e gli azure mobile se...DotNetCampus
 
Webkit presentazione ufficiale
Webkit presentazione ufficialeWebkit presentazione ufficiale
Webkit presentazione ufficialeintoinside
 

Similar to .NET & Linux: la strana coppia - DotNetDay 2018 (20)

ASP.NET Core Services e Linux per il Mobile - Pietro Libro - Codemotion Rome...
ASP.NET Core Services e Linux per il Mobile  - Pietro Libro - Codemotion Rome...ASP.NET Core Services e Linux per il Mobile  - Pietro Libro - Codemotion Rome...
ASP.NET Core Services e Linux per il Mobile - Pietro Libro - Codemotion Rome...
 
Le basi per lo sviluppo su Windows Phone tool, SDK, il primo progetto
 Le basi per lo sviluppo su Windows Phone tool, SDK, il primo progetto Le basi per lo sviluppo su Windows Phone tool, SDK, il primo progetto
Le basi per lo sviluppo su Windows Phone tool, SDK, il primo progetto
 
Meetup ASP.NET Core 2 e Docker
Meetup ASP.NET Core 2 e Docker Meetup ASP.NET Core 2 e Docker
Meetup ASP.NET Core 2 e Docker
 
ASP.NET Core 2 e Docker
ASP.NET Core 2 e DockerASP.NET Core 2 e Docker
ASP.NET Core 2 e Docker
 
Da DotNet a DotNetCore
Da DotNet a DotNetCoreDa DotNet a DotNetCore
Da DotNet a DotNetCore
 
Il futuro di Windows Phone
Il futuro di Windows PhoneIl futuro di Windows Phone
Il futuro di Windows Phone
 
Real world Visual Studio Code
Real world Visual Studio CodeReal world Visual Studio Code
Real world Visual Studio Code
 
Meetup ASP.NET Core e Kubernetes
Meetup ASP.NET Core e KubernetesMeetup ASP.NET Core e Kubernetes
Meetup ASP.NET Core e Kubernetes
 
Intel AppUp Webinar Italiano html5
Intel AppUp Webinar Italiano html5Intel AppUp Webinar Italiano html5
Intel AppUp Webinar Italiano html5
 
Back to the Future: Migrare da WebForm ad ASP.NET Core gradualmente
Back to the Future: Migrare da WebForm ad ASP.NET Core gradualmente Back to the Future: Migrare da WebForm ad ASP.NET Core gradualmente
Back to the Future: Migrare da WebForm ad ASP.NET Core gradualmente
 
SkyMedia: La tecnologia al servizio dell'intrattenimento
SkyMedia: La tecnologia al servizio dell'intrattenimentoSkyMedia: La tecnologia al servizio dell'intrattenimento
SkyMedia: La tecnologia al servizio dell'intrattenimento
 
Continuous Integration e High Quality Code
Continuous Integration e High Quality CodeContinuous Integration e High Quality Code
Continuous Integration e High Quality Code
 
Swagger per tutti
Swagger per tuttiSwagger per tutti
Swagger per tutti
 
Introduzione a .Net Core
Introduzione a .Net CoreIntroduzione a .Net Core
Introduzione a .Net Core
 
Exploring VS Code
Exploring VS CodeExploring VS Code
Exploring VS Code
 
Costruire applicazioni-cross-platform-con-xamarin-visual-studio-2013
Costruire applicazioni-cross-platform-con-xamarin-visual-studio-2013Costruire applicazioni-cross-platform-con-xamarin-visual-studio-2013
Costruire applicazioni-cross-platform-con-xamarin-visual-studio-2013
 
Are you a Gadgeteer? - NetMF@Work
Are you a Gadgeteer? - NetMF@WorkAre you a Gadgeteer? - NetMF@Work
Are you a Gadgeteer? - NetMF@Work
 
Gam05 costruisci il tuo antifurto perfetto con kinect e gli azure mobile se...
Gam05   costruisci il tuo antifurto perfetto con kinect e gli azure mobile se...Gam05   costruisci il tuo antifurto perfetto con kinect e gli azure mobile se...
Gam05 costruisci il tuo antifurto perfetto con kinect e gli azure mobile se...
 
Mobile e Smart Client
Mobile e Smart ClientMobile e Smart Client
Mobile e Smart Client
 
Webkit presentazione ufficiale
Webkit presentazione ufficialeWebkit presentazione ufficiale
Webkit presentazione ufficiale
 

More from Fabrizio Bernabei

Sviluppare SPA con Vue
Sviluppare SPA con VueSviluppare SPA con Vue
Sviluppare SPA con Vue
Fabrizio Bernabei
 
Sviluppare SPA con Vue.js
Sviluppare SPA con Vue.jsSviluppare SPA con Vue.js
Sviluppare SPA con Vue.js
Fabrizio Bernabei
 
Introduzione a React Native - Mokapp 2017
Introduzione a React Native - Mokapp 2017Introduzione a React Native - Mokapp 2017
Introduzione a React Native - Mokapp 2017
Fabrizio Bernabei
 
ASP.NET Core 1.0
ASP.NET Core 1.0ASP.NET Core 1.0
ASP.NET Core 1.0
Fabrizio Bernabei
 
Tutti pronti per Windows 10?
Tutti pronti per Windows 10?Tutti pronti per Windows 10?
Tutti pronti per Windows 10?
Fabrizio Bernabei
 
Mokapp2014 Lab Universal App
Mokapp2014 Lab Universal AppMokapp2014 Lab Universal App
Mokapp2014 Lab Universal AppFabrizio Bernabei
 
mokapp - Applicazioni fotografiche con Windows Phone 8
mokapp - Applicazioni fotografiche con Windows Phone 8mokapp - Applicazioni fotografiche con Windows Phone 8
mokapp - Applicazioni fotografiche con Windows Phone 8
Fabrizio Bernabei
 
ASP.NET Ajax Community Launch VS2008
ASP.NET Ajax Community Launch VS2008ASP.NET Ajax Community Launch VS2008
ASP.NET Ajax Community Launch VS2008Fabrizio Bernabei
 
Roadmap pubblicazione app WP7 - Community Tour 2011 DotNetUmbria
Roadmap pubblicazione app WP7 - Community Tour 2011 DotNetUmbriaRoadmap pubblicazione app WP7 - Community Tour 2011 DotNetUmbria
Roadmap pubblicazione app WP7 - Community Tour 2011 DotNetUmbriaFabrizio Bernabei
 
MS Days 08 Applicazioni RIA con Silverlight 2 e WCF
MS Days 08 Applicazioni RIA con Silverlight 2 e WCFMS Days 08 Applicazioni RIA con Silverlight 2 e WCF
MS Days 08 Applicazioni RIA con Silverlight 2 e WCFFabrizio Bernabei
 
Asp.net 4 Community Tour VS2010
Asp.net 4 Community Tour VS2010Asp.net 4 Community Tour VS2010
Asp.net 4 Community Tour VS2010
Fabrizio Bernabei
 

More from Fabrizio Bernabei (12)

Sviluppare SPA con Vue
Sviluppare SPA con VueSviluppare SPA con Vue
Sviluppare SPA con Vue
 
Sviluppare SPA con Vue.js
Sviluppare SPA con Vue.jsSviluppare SPA con Vue.js
Sviluppare SPA con Vue.js
 
Introduzione a React Native - Mokapp 2017
Introduzione a React Native - Mokapp 2017Introduzione a React Native - Mokapp 2017
Introduzione a React Native - Mokapp 2017
 
ASP.NET Core 1.0
ASP.NET Core 1.0ASP.NET Core 1.0
ASP.NET Core 1.0
 
Dnu2015
Dnu2015Dnu2015
Dnu2015
 
Tutti pronti per Windows 10?
Tutti pronti per Windows 10?Tutti pronti per Windows 10?
Tutti pronti per Windows 10?
 
Mokapp2014 Lab Universal App
Mokapp2014 Lab Universal AppMokapp2014 Lab Universal App
Mokapp2014 Lab Universal App
 
mokapp - Applicazioni fotografiche con Windows Phone 8
mokapp - Applicazioni fotografiche con Windows Phone 8mokapp - Applicazioni fotografiche con Windows Phone 8
mokapp - Applicazioni fotografiche con Windows Phone 8
 
ASP.NET Ajax Community Launch VS2008
ASP.NET Ajax Community Launch VS2008ASP.NET Ajax Community Launch VS2008
ASP.NET Ajax Community Launch VS2008
 
Roadmap pubblicazione app WP7 - Community Tour 2011 DotNetUmbria
Roadmap pubblicazione app WP7 - Community Tour 2011 DotNetUmbriaRoadmap pubblicazione app WP7 - Community Tour 2011 DotNetUmbria
Roadmap pubblicazione app WP7 - Community Tour 2011 DotNetUmbria
 
MS Days 08 Applicazioni RIA con Silverlight 2 e WCF
MS Days 08 Applicazioni RIA con Silverlight 2 e WCFMS Days 08 Applicazioni RIA con Silverlight 2 e WCF
MS Days 08 Applicazioni RIA con Silverlight 2 e WCF
 
Asp.net 4 Community Tour VS2010
Asp.net 4 Community Tour VS2010Asp.net 4 Community Tour VS2010
Asp.net 4 Community Tour VS2010
 

.NET & Linux: la strana coppia - DotNetDay 2018

  • 1. FABRIZIO BERNABEI @bernabei GIUSEPPE RIOLO .NET & Linux: la strana coppia #DOTNETDAY2018 1
  • 2. Grazie ai nostri sponsor … #DOTNETDAY2018 2
  • 3. … ed a tutti voi ! #DOTNETDAY2018 3
  • 4. .NET Core: Dove e quando voglio… Windows, Linux, macOS  Framework multi piattaforma • SDK* • Runtime* • SignalR* • (.NET Core 2.1-preview)  Strumenti di sviluppo • Visual Studio Code #DOTNETDAY2018 4
  • 5. ASP.NET Core SignalR (.NET Core Preview)  Libreria che permette di aggiungere funzionalità real-time ad applicazioni  Permette a codice server-side di chiamare codice JS sui client connessi  Gestione automatica della connesione  Connessione tra client e server persistente, a differenza di HTTP  Open Source (analogamente a .NET Core) #DOTNETDAY2018 5
  • 6. Hello World SignalR…  Creazione app web ASP.NET Core  Creazione hub SignalR per eseguire il push dei dati ai client  Utilizzo libreria SignalR JS per invio messaggi e visualizzazione aggiornamenti  Esempi di deploy #DOTNETDAY2018 6
  • 8. Deploy .NET Core App #DOTNETDAY2018 8  Deploy muti-target: stesso codice, diverse piattaforme  Windows  Linux  Docker  MacOS  Windows Azure  Amazon AWS
  • 9. Deploy Linux #DOTNETDAY2018 9  Applicazione eseguita dalla runtime .NET Core  Segue le regole della distribuzione della distro linux  APT (Advanced Packaging Tool) @ Debian  Yum (Yellow dog Updater, Modified) @ Fedora, Red Hat, CentOS  Pacman @ Arch Linux  Viene eseguita mediante il gestore di servizi di sistema  Systemctl  init
  • 11. Deploy Docker #DOTNETDAY2018 11  Docker: tra la macchina virtuale e l’applicazione  Creazione di un’immagine  Gestione dei file  Configurazione delle porte  Mounting dei volumi  Avvio di container a partire da un immagine  Da un’immagine possono essere avviate più istanze (container)  Ogni container è indipendente da ogni altro