SlideShare une entreprise Scribd logo
1  sur  22
Télécharger pour lire hors ligne
Conteneuriser une application
.NET8 en utilisant Docker et Azure
Architecte d’intégration des solutions infonuagique
Microsoft MVP & MCT & Docker Captain
@rebaihamida
M
i
c
r
o
s
o
f
t
M
V
P
Microsoft MVP
& MCT
Architecte d'intégration des solutions infonuagique
Microsoft MVP en Technologies de développement
Docker Captain
Membre de dotnetfoundation
Blogger and Technical writer
Auteur de livres
Rebai Hamida – Medium
Hamida Rebai Trabelsi | LinkedIn
Rebaï Hamida – YouTube
@rebaihamida
.NET 8
Hamida Rebai
Nouveautés .NET 8
Améliorations de Performance: plus de 1 250 améliorations de performance,
notamment dans les scénarios d'API JSON et de charges de travail réalistes avec accès à
la base de données.
ASP.NET Core Enhancements: ASP.NET Core dans .NET 8 offre des capacités étendues
pour le développement d'applications web modernes, avec des outils améliorés pour le
rendu côté serveur et l'interactivité côté client.
Blazor et WebAssembly: Blazor dans .NET 8 comprend un rendu côté serveur amélioré
et une interactivité accrue avec WebAssembly. Les composants se rendent 20% plus
rapidement et de nouvelles fonctionnalités de packaging web sont introduites.
C# 12 Nouveautés: Des fonctionnalités telles que les constructeurs primaires et les
expressions de collection sont ajoutées, améliorant la lisibilité et la simplicité du code.
Outils de Développement: De nouveaux outils dans Visual Studio et Visual Studio Code
sont introduits pour améliorer l'expérience de développement, y compris des
améliorations pour le routage, le débogage et les tests d'API.
Nouveautés .NET 8
Architecture de Référence eShop: Une application de référence complète, l'eShop, est
présentée, utilisant une architecture de microservices cloud-native et mettant en
évidence les nouvelles capacités de .NET 8.
Développement d'Applications Full-Stack: .NET 8 met l'accent sur la facilité de
développement d'applications web full-stack, avec des améliorations pour les
développeurs backend et frontend.
Améliorations de Sécurité et Performance: ASP.NET Core est conçu avec un accent sur la
sécurité et optimisé pour la performance, permettant de gérer divers scénarios avec
efficacité.
Développement Cloud-Native et Mobile: .NET 8 continue d'évoluer comme une
plateforme de choix pour le développement cloud-native et mobile.
Communauté et Contribution: .NET 8 a bénéficié d'une forte contribution de la
communauté, reflétant son adoption croissante et son impact dans le monde du
développement de logiciels.
Concepts de base sur
les conteneurs Docker
Hamida Rebai
Conteneurisation
Docker Host
App 1 App 2
Service 1 Service 2
OS on a VM or a Server
Vue d'ensemble Conteneur Docker et image
Conteneur Docker
● Environnement d'exécution virtualisé
utilisé dans le développement
d'applications.
● Peut utiliser une seule machine,
partager son noyau et virtualiser le
système d'exploitation pour exécuter
des processus plus isolés.
● Les conteneurs Docker sont légers.
Image Docker
● Snapshot dans d'autres types
d'environnements de VM.
● Enregistrement d'un conteneur Docker à un
moment précis. L'image ne peut pas être
modifiée, elle peut être dupliquée,
partagée ou supprimée.
Conteneur et image
Dockerfile Docker Image
Conteneur
Docker
Compiler
(Build)
Exécuter (Run)
Dockerfile
FROM mcr.microsoft.com/dotnet/sdk:7.0 AS build
WORKDIR /src
1
COPY ["mysolution.csproj", « mysolution/"]
RUN dotnet restore « mysolution.csproj" 2
COPY . .
WORKDIR "/src/mysolution"
RUN dotnet build “mysolution.csproj" -c Release -o /app/build
3
Spécifier une
image
Copier le
fichier de projet
Copier et générer
Créer une image d'exécution
FROM mcr.microsoft.com/dotnet/aspnet:7.0 AS base
WORKDIR /app
COPY --from=build /app/publish .
4
Dockerfile
Lancer l’application
5
ENTRYPOINT ["dotnet", « yousolution.dll"]
Compiler votre image & démarrer notre conteneur
docker build -t yoursolutionimage:1.0 .
Créer et exécuter votre conteneur
docker run –d -p 8080:80 -ti –name myapp --rm yousolutionimage:1.0
Pour optimiser l’exécution (publish)
Use : -no-restore and p:PublishTrimmed, p:PublishReadyToRun,
p:PublishSingleFile
Passons aux démonstrations!
Hamida Rebai
Prérequis
• Visual Studio
GitHub Copilot
Docker init
Hamida Rebai
Conteneurs dans Azure
Hamida Rebai
Conteneurs dans Azure : un ensemble de services
Container Instances Batch
Service Fabric Kubernetes Service
App Service
Conteneur et orchestrateur
Stockage
• Azure Container Instance
• Azure App Service as a
Container
• Azure Container Registry
Pour plusieurs conteneurs
Pour conteneur unique
• Azure Kubernetes Service
• Azure Container App
Conteneuriser une application .NET 8 en utilisant Docker et Azure.pdf
Conteneuriser une application .NET 8 en utilisant Docker et Azure.pdf
Conteneuriser une application .NET 8 en utilisant Docker et Azure.pdf

Contenu connexe

Similaire à Conteneuriser une application .NET 8 en utilisant Docker et Azure.pdf

Docker le buzz est il justifié ?
Docker le buzz est il justifié ? Docker le buzz est il justifié ?
Docker le buzz est il justifié ? Romain Chalumeau
 
Gab17 lyon-Docker pour quoi faire - Cédric Leblond et Derue
Gab17 lyon-Docker pour quoi faire - Cédric Leblond et DerueGab17 lyon-Docker pour quoi faire - Cédric Leblond et Derue
Gab17 lyon-Docker pour quoi faire - Cédric Leblond et DerueAZUG FR
 
Sw 100 fr docker conteneurisation des applications
Sw 100 fr docker conteneurisation des applicationsSw 100 fr docker conteneurisation des applications
Sw 100 fr docker conteneurisation des applicationsStephane Woillez
 
GAB 2017 PARIS - Docker sur Azure Container Services et DCOS par Michaël FERY...
GAB 2017 PARIS - Docker sur Azure Container Services et DCOS par Michaël FERY...GAB 2017 PARIS - Docker sur Azure Container Services et DCOS par Michaël FERY...
GAB 2017 PARIS - Docker sur Azure Container Services et DCOS par Michaël FERY...AZUG FR
 
Architecture microservices avec docker
Architecture microservices avec dockerArchitecture microservices avec docker
Architecture microservices avec dockergcatt
 
Architecturez vos applications mobiles avec Azure et Xamarin
Architecturez vos applications mobiles avec Azure et XamarinArchitecturez vos applications mobiles avec Azure et Xamarin
Architecturez vos applications mobiles avec Azure et XamarinThierry Buisson
 
developpement web framework cms developpement brute
developpement web framework cms developpement brutedeveloppement web framework cms developpement brute
developpement web framework cms developpement bruteYounesOuladSayad1
 
La valeur de Docker pour les équipes de développement et accélérateur dans le...
La valeur de Docker pour les équipes de développement et accélérateur dans le...La valeur de Docker pour les équipes de développement et accélérateur dans le...
La valeur de Docker pour les équipes de développement et accélérateur dans le...Laurent Goujon
 
Au cœur du Framework .NET 4.5.1
Au cœur du Framework .NET 4.5.1Au cœur du Framework .NET 4.5.1
Au cœur du Framework .NET 4.5.1Microsoft
 
Ppt 2 a jeanpierre-yle-cleach-hec-05022015_sent2hec
Ppt 2   a jeanpierre-yle-cleach-hec-05022015_sent2hecPpt 2   a jeanpierre-yle-cleach-hec-05022015_sent2hec
Ppt 2 a jeanpierre-yle-cleach-hec-05022015_sent2hecYves LE CLEACH
 
Sybase Connect Atelier Power Builderv2
Sybase Connect Atelier Power Builderv2Sybase Connect Atelier Power Builderv2
Sybase Connect Atelier Power Builderv2apratt72
 
Devoteam REX OpenShift DevOps - Red Hat Roadshow Paris - avril 2018
Devoteam REX OpenShift DevOps - Red Hat Roadshow Paris - avril 2018Devoteam REX OpenShift DevOps - Red Hat Roadshow Paris - avril 2018
Devoteam REX OpenShift DevOps - Red Hat Roadshow Paris - avril 2018Cedric Girard
 
Tadx - Présentation Conteneurisation
Tadx -  Présentation ConteneurisationTadx -  Présentation Conteneurisation
Tadx - Présentation ConteneurisationTADx
 
Découverte .Net Core et Asp.Net Core
Découverte .Net Core et Asp.Net CoreDécouverte .Net Core et Asp.Net Core
Découverte .Net Core et Asp.Net CoreIonut Mihalcea
 
Docker, Pierre angulaire du continuous delivery ?
Docker, Pierre angulaire du continuous delivery ?Docker, Pierre angulaire du continuous delivery ?
Docker, Pierre angulaire du continuous delivery ?Adrien Blind
 
Expérience pratique de développement Azure
Expérience pratique de développement AzureExpérience pratique de développement Azure
Expérience pratique de développement AzureLevio
 

Similaire à Conteneuriser une application .NET 8 en utilisant Docker et Azure.pdf (20)

Docker le buzz est il justifié ?
Docker le buzz est il justifié ? Docker le buzz est il justifié ?
Docker le buzz est il justifié ?
 
Gab17 lyon-Docker pour quoi faire - Cédric Leblond et Derue
Gab17 lyon-Docker pour quoi faire - Cédric Leblond et DerueGab17 lyon-Docker pour quoi faire - Cédric Leblond et Derue
Gab17 lyon-Docker pour quoi faire - Cédric Leblond et Derue
 
Sw 100 fr docker conteneurisation des applications
Sw 100 fr docker conteneurisation des applicationsSw 100 fr docker conteneurisation des applications
Sw 100 fr docker conteneurisation des applications
 
GAB 2017 PARIS - Docker sur Azure Container Services et DCOS par Michaël FERY...
GAB 2017 PARIS - Docker sur Azure Container Services et DCOS par Michaël FERY...GAB 2017 PARIS - Docker sur Azure Container Services et DCOS par Michaël FERY...
GAB 2017 PARIS - Docker sur Azure Container Services et DCOS par Michaël FERY...
 
Architecture microservices avec docker
Architecture microservices avec dockerArchitecture microservices avec docker
Architecture microservices avec docker
 
Architecturez vos applications mobiles avec Azure et Xamarin
Architecturez vos applications mobiles avec Azure et XamarinArchitecturez vos applications mobiles avec Azure et Xamarin
Architecturez vos applications mobiles avec Azure et Xamarin
 
developpement web framework cms developpement brute
developpement web framework cms developpement brutedeveloppement web framework cms developpement brute
developpement web framework cms developpement brute
 
docker.pptx
docker.pptxdocker.pptx
docker.pptx
 
La valeur de Docker pour les équipes de développement et accélérateur dans le...
La valeur de Docker pour les équipes de développement et accélérateur dans le...La valeur de Docker pour les équipes de développement et accélérateur dans le...
La valeur de Docker pour les équipes de développement et accélérateur dans le...
 
Au cœur du Framework .NET 4.5.1
Au cœur du Framework .NET 4.5.1Au cœur du Framework .NET 4.5.1
Au cœur du Framework .NET 4.5.1
 
Ppt 2 a jeanpierre-yle-cleach-hec-05022015_sent2hec
Ppt 2   a jeanpierre-yle-cleach-hec-05022015_sent2hecPpt 2   a jeanpierre-yle-cleach-hec-05022015_sent2hec
Ppt 2 a jeanpierre-yle-cleach-hec-05022015_sent2hec
 
Sybase Connect Atelier Power Builderv2
Sybase Connect Atelier Power Builderv2Sybase Connect Atelier Power Builderv2
Sybase Connect Atelier Power Builderv2
 
Devoteam REX OpenShift DevOps - Red Hat Roadshow Paris - avril 2018
Devoteam REX OpenShift DevOps - Red Hat Roadshow Paris - avril 2018Devoteam REX OpenShift DevOps - Red Hat Roadshow Paris - avril 2018
Devoteam REX OpenShift DevOps - Red Hat Roadshow Paris - avril 2018
 
Tadx - Présentation Conteneurisation
Tadx -  Présentation ConteneurisationTadx -  Présentation Conteneurisation
Tadx - Présentation Conteneurisation
 
Découverte .Net Core et Asp.Net Core
Découverte .Net Core et Asp.Net CoreDécouverte .Net Core et Asp.Net Core
Découverte .Net Core et Asp.Net Core
 
Docker, Pierre angulaire du continuous delivery ?
Docker, Pierre angulaire du continuous delivery ?Docker, Pierre angulaire du continuous delivery ?
Docker, Pierre angulaire du continuous delivery ?
 
vNext
vNextvNext
vNext
 
Architecture .net
Architecture  .netArchitecture  .net
Architecture .net
 
Google appengine&guice
Google appengine&guiceGoogle appengine&guice
Google appengine&guice
 
Expérience pratique de développement Azure
Expérience pratique de développement AzureExpérience pratique de développement Azure
Expérience pratique de développement Azure
 

Plus de Hamida Rebai Trabelsi

Rome .NET Conference 2024 - Remote Conference
Rome .NET Conference 2024  - Remote ConferenceRome .NET Conference 2024  - Remote Conference
Rome .NET Conference 2024 - Remote ConferenceHamida Rebai Trabelsi
 
APIs In Action -Harnessing the Power of Azure API Management: Building Robust...
APIs In Action -Harnessing the Power of Azure API Management: Building Robust...APIs In Action -Harnessing the Power of Azure API Management: Building Robust...
APIs In Action -Harnessing the Power of Azure API Management: Building Robust...Hamida Rebai Trabelsi
 
Azure Spring Clean 2024 event - Azure API Management: Architecting for Perfor...
Azure Spring Clean 2024 event - Azure API Management: Architecting for Perfor...Azure Spring Clean 2024 event - Azure API Management: Architecting for Perfor...
Azure Spring Clean 2024 event - Azure API Management: Architecting for Perfor...Hamida Rebai Trabelsi
 
Streamlining Workflows: Unleashing Automation with Azure and Power Automate
Streamlining Workflows: Unleashing Automation with Azure and Power AutomateStreamlining Workflows: Unleashing Automation with Azure and Power Automate
Streamlining Workflows: Unleashing Automation with Azure and Power AutomateHamida Rebai Trabelsi
 
Build containerized application using Docker and Azure.pdf
Build containerized application using Docker and Azure.pdfBuild containerized application using Docker and Azure.pdf
Build containerized application using Docker and Azure.pdfHamida Rebai Trabelsi
 
Les nouveautés de Xamarin et Visual Studio App Center
Les nouveautés de Xamarin et Visual Studio App CenterLes nouveautés de Xamarin et Visual Studio App Center
Les nouveautés de Xamarin et Visual Studio App CenterHamida Rebai Trabelsi
 
White Paper : ASP.NET Core AngularJs 2 and Prime
White Paper : ASP.NET Core AngularJs 2 and PrimeWhite Paper : ASP.NET Core AngularJs 2 and Prime
White Paper : ASP.NET Core AngularJs 2 and PrimeHamida Rebai Trabelsi
 
C# Fundamentals for Absolute Beginners
C# Fundamentals for Absolute BeginnersC# Fundamentals for Absolute Beginners
C# Fundamentals for Absolute BeginnersHamida Rebai Trabelsi
 
Preparing for Exam MTA 98-375 HTML5 App Development
Preparing for Exam MTA 98-375 HTML5 App DevelopmentPreparing for Exam MTA 98-375 HTML5 App Development
Preparing for Exam MTA 98-375 HTML5 App DevelopmentHamida Rebai Trabelsi
 
Microsoft Azure Fundamentals Websites
Microsoft Azure Fundamentals WebsitesMicrosoft Azure Fundamentals Websites
Microsoft Azure Fundamentals WebsitesHamida Rebai Trabelsi
 

Plus de Hamida Rebai Trabelsi (20)

Rome .NET Conference 2024 - Remote Conference
Rome .NET Conference 2024  - Remote ConferenceRome .NET Conference 2024  - Remote Conference
Rome .NET Conference 2024 - Remote Conference
 
APIs In Action -Harnessing the Power of Azure API Management: Building Robust...
APIs In Action -Harnessing the Power of Azure API Management: Building Robust...APIs In Action -Harnessing the Power of Azure API Management: Building Robust...
APIs In Action -Harnessing the Power of Azure API Management: Building Robust...
 
Azure Spring Clean 2024 event - Azure API Management: Architecting for Perfor...
Azure Spring Clean 2024 event - Azure API Management: Architecting for Perfor...Azure Spring Clean 2024 event - Azure API Management: Architecting for Perfor...
Azure Spring Clean 2024 event - Azure API Management: Architecting for Perfor...
 
Streamlining Workflows: Unleashing Automation with Azure and Power Automate
Streamlining Workflows: Unleashing Automation with Azure and Power AutomateStreamlining Workflows: Unleashing Automation with Azure and Power Automate
Streamlining Workflows: Unleashing Automation with Azure and Power Automate
 
Build containerized application using Docker and Azure.pdf
Build containerized application using Docker and Azure.pdfBuild containerized application using Docker and Azure.pdf
Build containerized application using Docker and Azure.pdf
 
TechDayConf Edition 1 - 2020
TechDayConf Edition 1 -  2020TechDayConf Edition 1 -  2020
TechDayConf Edition 1 - 2020
 
Les nouveautés de Xamarin et Visual Studio App Center
Les nouveautés de Xamarin et Visual Studio App CenterLes nouveautés de Xamarin et Visual Studio App Center
Les nouveautés de Xamarin et Visual Studio App Center
 
Xamarin notes- en français
Xamarin notes- en françaisXamarin notes- en français
Xamarin notes- en français
 
Advices before starting a project
Advices before starting a projectAdvices before starting a project
Advices before starting a project
 
White Paper : ASP.NET Core AngularJs 2 and Prime
White Paper : ASP.NET Core AngularJs 2 and PrimeWhite Paper : ASP.NET Core AngularJs 2 and Prime
White Paper : ASP.NET Core AngularJs 2 and Prime
 
Certification Digital Active
Certification Digital ActiveCertification Digital Active
Certification Digital Active
 
Resume-REBAI.json
Resume-REBAI.jsonResume-REBAI.json
Resume-REBAI.json
 
Présentation- Communauté
Présentation- CommunautéPrésentation- Communauté
Présentation- Communauté
 
Detailed-Resume-Rebai-Hamida
Detailed-Resume-Rebai-HamidaDetailed-Resume-Rebai-Hamida
Detailed-Resume-Rebai-Hamida
 
CV REBAI Hamida
CV REBAI HamidaCV REBAI Hamida
CV REBAI Hamida
 
TechWadi-MENA-Guide-to-GES-2016-vf
TechWadi-MENA-Guide-to-GES-2016-vfTechWadi-MENA-Guide-to-GES-2016-vf
TechWadi-MENA-Guide-to-GES-2016-vf
 
C# Fundamentals for Absolute Beginners
C# Fundamentals for Absolute BeginnersC# Fundamentals for Absolute Beginners
C# Fundamentals for Absolute Beginners
 
Preparing for Exam MTA 98-375 HTML5 App Development
Preparing for Exam MTA 98-375 HTML5 App DevelopmentPreparing for Exam MTA 98-375 HTML5 App Development
Preparing for Exam MTA 98-375 HTML5 App Development
 
Microsoft Azure Fundamentals
Microsoft Azure FundamentalsMicrosoft Azure Fundamentals
Microsoft Azure Fundamentals
 
Microsoft Azure Fundamentals Websites
Microsoft Azure Fundamentals WebsitesMicrosoft Azure Fundamentals Websites
Microsoft Azure Fundamentals Websites
 

Conteneuriser une application .NET 8 en utilisant Docker et Azure.pdf

  • 1. Conteneuriser une application .NET8 en utilisant Docker et Azure Architecte d’intégration des solutions infonuagique Microsoft MVP & MCT & Docker Captain @rebaihamida
  • 2. M i c r o s o f t M V P Microsoft MVP & MCT Architecte d'intégration des solutions infonuagique Microsoft MVP en Technologies de développement Docker Captain Membre de dotnetfoundation Blogger and Technical writer Auteur de livres Rebai Hamida – Medium Hamida Rebai Trabelsi | LinkedIn Rebaï Hamida – YouTube @rebaihamida
  • 4. Nouveautés .NET 8 Améliorations de Performance: plus de 1 250 améliorations de performance, notamment dans les scénarios d'API JSON et de charges de travail réalistes avec accès à la base de données. ASP.NET Core Enhancements: ASP.NET Core dans .NET 8 offre des capacités étendues pour le développement d'applications web modernes, avec des outils améliorés pour le rendu côté serveur et l'interactivité côté client. Blazor et WebAssembly: Blazor dans .NET 8 comprend un rendu côté serveur amélioré et une interactivité accrue avec WebAssembly. Les composants se rendent 20% plus rapidement et de nouvelles fonctionnalités de packaging web sont introduites. C# 12 Nouveautés: Des fonctionnalités telles que les constructeurs primaires et les expressions de collection sont ajoutées, améliorant la lisibilité et la simplicité du code. Outils de Développement: De nouveaux outils dans Visual Studio et Visual Studio Code sont introduits pour améliorer l'expérience de développement, y compris des améliorations pour le routage, le débogage et les tests d'API.
  • 5. Nouveautés .NET 8 Architecture de Référence eShop: Une application de référence complète, l'eShop, est présentée, utilisant une architecture de microservices cloud-native et mettant en évidence les nouvelles capacités de .NET 8. Développement d'Applications Full-Stack: .NET 8 met l'accent sur la facilité de développement d'applications web full-stack, avec des améliorations pour les développeurs backend et frontend. Améliorations de Sécurité et Performance: ASP.NET Core est conçu avec un accent sur la sécurité et optimisé pour la performance, permettant de gérer divers scénarios avec efficacité. Développement Cloud-Native et Mobile: .NET 8 continue d'évoluer comme une plateforme de choix pour le développement cloud-native et mobile. Communauté et Contribution: .NET 8 a bénéficié d'une forte contribution de la communauté, reflétant son adoption croissante et son impact dans le monde du développement de logiciels.
  • 6. Concepts de base sur les conteneurs Docker Hamida Rebai
  • 7. Conteneurisation Docker Host App 1 App 2 Service 1 Service 2 OS on a VM or a Server
  • 8. Vue d'ensemble Conteneur Docker et image Conteneur Docker ● Environnement d'exécution virtualisé utilisé dans le développement d'applications. ● Peut utiliser une seule machine, partager son noyau et virtualiser le système d'exploitation pour exécuter des processus plus isolés. ● Les conteneurs Docker sont légers. Image Docker ● Snapshot dans d'autres types d'environnements de VM. ● Enregistrement d'un conteneur Docker à un moment précis. L'image ne peut pas être modifiée, elle peut être dupliquée, partagée ou supprimée.
  • 9. Conteneur et image Dockerfile Docker Image Conteneur Docker Compiler (Build) Exécuter (Run)
  • 10. Dockerfile FROM mcr.microsoft.com/dotnet/sdk:7.0 AS build WORKDIR /src 1 COPY ["mysolution.csproj", « mysolution/"] RUN dotnet restore « mysolution.csproj" 2 COPY . . WORKDIR "/src/mysolution" RUN dotnet build “mysolution.csproj" -c Release -o /app/build 3 Spécifier une image Copier le fichier de projet Copier et générer Créer une image d'exécution FROM mcr.microsoft.com/dotnet/aspnet:7.0 AS base WORKDIR /app COPY --from=build /app/publish . 4
  • 11. Dockerfile Lancer l’application 5 ENTRYPOINT ["dotnet", « yousolution.dll"] Compiler votre image & démarrer notre conteneur docker build -t yoursolutionimage:1.0 . Créer et exécuter votre conteneur docker run –d -p 8080:80 -ti –name myapp --rm yousolutionimage:1.0 Pour optimiser l’exécution (publish) Use : -no-restore and p:PublishTrimmed, p:PublishReadyToRun, p:PublishSingleFile
  • 14.
  • 16.
  • 18. Conteneurs dans Azure : un ensemble de services Container Instances Batch Service Fabric Kubernetes Service App Service
  • 19. Conteneur et orchestrateur Stockage • Azure Container Instance • Azure App Service as a Container • Azure Container Registry Pour plusieurs conteneurs Pour conteneur unique • Azure Kubernetes Service • Azure Container App