SlideShare a Scribd company logo
1 of 75
Azure App Service for
Windows Container
ā€¢ Demo : Installing Custom Fontsā€¦.
Open the solution in the Visual Studio
ā€¢ The sample project contains a simple ASP.NET application that uses a custom font
that is installed into the Windows font library.
ā€¢ It's not necessary to install fonts, but it's an example of an app that is integrated
with the underlying OS.
ā€¢ To migrate such an app to App Service, you either rearchitect your code to
remove the integration, or migrate it as-is in a custom Windows container.
Install the Font : In Windows Explorer, navigate to custom-font-win-container-
master/CustomFontSample, right-click FrederickatheGreat-Regular.ttf, and
select Install.
Ctrl + F5 to run application without
debugging.
Modify the Dockerfile
Publish it to DockerHub
Create a Web App for Containerā€¦and use
your dockerized imageā€¦.
ā€¢ In many cases, your existing .NET applications are not based just on your .NET
Code solution and the .NET Framework libraries but also based on additional
artifacts from Windows that have to be enabled (such as IIS, .NET WCF HTTP
Activation, Server roles, etc.) and even additional components from third parties
that you need to install in windows through .MSI setups.
ā€¢ In order to install an MSI within a Windows Container you just need to copy in the
.msi file and run msiexec to install it.
There are just three lines of Dockerfile instructions:
ā€¢ FROM specifies the base image to use, in this case a specific version of the ASP.NET image using
Windows Server Core.
ā€¢ COPY copies the existing MSI from the local machine into the Docker image
ā€¢ RUN installs the MSI using msiexec, with the qn switch to install silently, and passing a value to
the custom RELEASENAME variable that the MSI uses.
ā€¢ That .msi setup could install whatever dependency you might need for your
application, like the .DLLS of a PDF creator library (or any other comparable case)
that you might need to use from your ASP.NET application.
Enabling Windows features in Docker images
ā€¢ In order to enable Windows features or artifacts (like .NET WCF HTTP Activation,
IIS configuration, etc.) in a Windows Container, you need to specify those
dependencies in your dockerfile so they will be installed when the container is
deployed.
The following dockerfile would enable .NET WCF HTTP Activation in
your Windows Container:
ā€¢ The important line in that dockerfile is the line with the RUN command that
specifies to add certain Windows Feature, in this case, .NET WCF HTTP Activation.
Note that not all the Windows features can be activated in Windows Containers
since some of them are not supported, like MSMQ or other cases.
ā€¢ CI/CD pipelines
Navigate to the build options under Pipeline tab. Select Build definition and select
the Edit option.
Add tasks to the Agent Job and in the Run Service, Build Service and Push Service
task, authorize the Azure Subscription and update Azure Container Registry.
Navigate to the Release section under the Pipeline tab. Select the release definition,
Click Edit Pipeline option and then click on the Tasks section
Under the Execute Azure SQL:DacpacTask section, select the Azure Subscription
from the dropdown.
Execute Azure SQL:DacpacTask: This task will deploy the dacpac to the mhcdb
database so that the schema and data is configured for the backend
Azure App Service Deploy will pull the appropriate docker image corresponding to
the Build from repository specified, and then deploys the image to the Linux App
Service
Click on Variables section, update the ACR details and the SQLServer details with the details notel
earlier while configuration of the environment and click on the Save button.
Initiate the CI Build and Deployment through code commit.
Click on Files section under the Repos tab and navigate to the Index.cshtml file for
editing.
Modify it and click on Commit.
Click on Builds tab and subsequently select the build definition and again click on
ellipsis to view the build in progress.
The Build will generate and push the docker image of the web application to the
Azure Container Registry. Once the build is completed, the build summary will be
displayed.
Navigate to the Azure portal and provide the given information.
Navigate to the Azure Container Portal and then select the Repositories option to
view the generated docker images.
Navigate to the Release section under Pipeline tab, and double-click on the latest
release displayed on the Page. Click on Logs to view the details of the release in
progress.
The release will deploy the docker image to the App Service based on the BuildID
tagged with the docker image. Once the release is completed, the release Logs will
be displayed.
Navigate back to Azure portal and click on the overview section of App Service. Click
on the link displayed under the URL field to browse the application and view the
changes.
Azure App Service for Windows Container

More Related Content

What's hot

Scale your PHP application with Elastic Beanstalk - CloudParty Genova
Scale your PHP application with Elastic Beanstalk - CloudParty GenovaScale your PHP application with Elastic Beanstalk - CloudParty Genova
Scale your PHP application with Elastic Beanstalk - CloudParty GenovaCorley S.r.l.
Ā 
Programming and the web for beginners
Programming and the web for beginnersProgramming and the web for beginners
Programming and the web for beginnersSon Nguyen
Ā 
Troubleshooting mule
Troubleshooting muleTroubleshooting mule
Troubleshooting muleSon Nguyen
Ā 
Ajax control asp.net
Ajax control asp.netAjax control asp.net
Ajax control asp.netSireesh K
Ā 
Automatic documentation with mule
Automatic documentation with mule Automatic documentation with mule
Automatic documentation with mule Anirban Sen Chowdhary
Ā 
ICON UK 2016: Modernizing an IBM Notes applicaton using with AngularJS
ICON UK 2016: Modernizing an IBM Notes applicaton using with AngularJSICON UK 2016: Modernizing an IBM Notes applicaton using with AngularJS
ICON UK 2016: Modernizing an IBM Notes applicaton using with AngularJSMark Leusink
Ā 
Introduction To Asp.Net Ajax
Introduction To Asp.Net AjaxIntroduction To Asp.Net Ajax
Introduction To Asp.Net AjaxJeff Blankenburg
Ā 
MUnit run and wait scope
MUnit run and wait scopeMUnit run and wait scope
MUnit run and wait scopeShanky Gupta
Ā 
Winter '19 release development.ppt
Winter '19 release development.pptWinter '19 release development.ppt
Winter '19 release development.pptKailas Shimpi
Ā 
Sharing Resources - Mule
Sharing Resources - MuleSharing Resources - Mule
Sharing Resources - MuleAnil Kumar V
Ā 
Containers Lab
Containers Lab Containers Lab
Containers Lab Dev_Events
Ā 

What's hot (15)

Scale your PHP application with Elastic Beanstalk - CloudParty Genova
Scale your PHP application with Elastic Beanstalk - CloudParty GenovaScale your PHP application with Elastic Beanstalk - CloudParty Genova
Scale your PHP application with Elastic Beanstalk - CloudParty Genova
Ā 
Mule esb
Mule esbMule esb
Mule esb
Ā 
Anypoint lessons
Anypoint lessonsAnypoint lessons
Anypoint lessons
Ā 
Programming and the web for beginners
Programming and the web for beginnersProgramming and the web for beginners
Programming and the web for beginners
Ā 
Troubleshooting mule
Troubleshooting muleTroubleshooting mule
Troubleshooting mule
Ā 
Ajax control asp.net
Ajax control asp.netAjax control asp.net
Ajax control asp.net
Ā 
Automatic documentation with mule
Automatic documentation with mule Automatic documentation with mule
Automatic documentation with mule
Ā 
ICON UK 2016: Modernizing an IBM Notes applicaton using with AngularJS
ICON UK 2016: Modernizing an IBM Notes applicaton using with AngularJSICON UK 2016: Modernizing an IBM Notes applicaton using with AngularJS
ICON UK 2016: Modernizing an IBM Notes applicaton using with AngularJS
Ā 
Mule
MuleMule
Mule
Ā 
Introduction To Asp.Net Ajax
Introduction To Asp.Net AjaxIntroduction To Asp.Net Ajax
Introduction To Asp.Net Ajax
Ā 
MUnit run and wait scope
MUnit run and wait scopeMUnit run and wait scope
MUnit run and wait scope
Ā 
React JS
React JSReact JS
React JS
Ā 
Winter '19 release development.ppt
Winter '19 release development.pptWinter '19 release development.ppt
Winter '19 release development.ppt
Ā 
Sharing Resources - Mule
Sharing Resources - MuleSharing Resources - Mule
Sharing Resources - Mule
Ā 
Containers Lab
Containers Lab Containers Lab
Containers Lab
Ā 

Similar to Azure App Service for Windows Container

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
Ā 
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
Ā 
Development workflow guide for building docker apps
Development workflow guide for building docker appsDevelopment workflow guide for building docker apps
Development workflow guide for building docker appsAbdul Khan
Ā 
Development workflow guide for building docker apps
Development workflow guide for building docker appsDevelopment workflow guide for building docker apps
Development workflow guide for building docker appsAbdul Khan
Ā 
Win ce 6.0 development (1)
Win ce 6.0 development (1)Win ce 6.0 development (1)
Win ce 6.0 development (1)Rajshree Daware
Ā 
Goā€¦Running Kentico CMS on Windows Azure
Goā€¦Running Kentico CMS on Windows AzureGoā€¦Running Kentico CMS on Windows Azure
Goā€¦Running Kentico CMS on Windows AzureThomas Robbins
Ā 
Dockerization of Azure Platform
Dockerization of Azure PlatformDockerization of Azure Platform
Dockerization of Azure Platformnirajrules
Ā 
Using and extending Alfresco Content Application
Using and extending Alfresco Content ApplicationUsing and extending Alfresco Content Application
Using and extending Alfresco Content ApplicationDenys Vuika
Ā 
AWS Atlanta meetup Build Tools - Code Commit, Code Build, Code Deploy
AWS Atlanta meetup Build Tools - Code Commit, Code Build, Code DeployAWS Atlanta meetup Build Tools - Code Commit, Code Build, Code Deploy
AWS Atlanta meetup Build Tools - Code Commit, Code Build, Code DeployAdam Book
Ā 
Introduction to angular | Concepts and Environment setup
Introduction to angular | Concepts and Environment setupIntroduction to angular | Concepts and Environment setup
Introduction to angular | Concepts and Environment setupAnsley Rodrigues
Ā 
AWS CodeDeploy
AWS CodeDeploy AWS CodeDeploy
AWS CodeDeploy Ratan Das
Ā 
Introduction to Containers & Diving a little deeper into the benefits of Con...
 Introduction to Containers & Diving a little deeper into the benefits of Con... Introduction to Containers & Diving a little deeper into the benefits of Con...
Introduction to Containers & Diving a little deeper into the benefits of Con...Synergetics Learning and Cloud Consulting
Ā 
Modernizing existing .NET applications with Windows Containers and Azure cloud
Modernizing existing .NET applications with Windows Containers and Azure cloudModernizing existing .NET applications with Windows Containers and Azure cloud
Modernizing existing .NET applications with Windows Containers and Azure cloudMicrosoft Tech Community
Ā 
Chapter6 web apps-tomcat
Chapter6 web apps-tomcatChapter6 web apps-tomcat
Chapter6 web apps-tomcatVenkat Gowda
Ā 
Building and Deployment of Drupal sites with Features and Context
Building and Deployment of Drupal sites with Features and ContextBuilding and Deployment of Drupal sites with Features and Context
Building and Deployment of Drupal sites with Features and ContextSvilen Sabev
Ā 
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
Ā 
Bring and distribute your dekstop applications on the Universal Windows Platf...
Bring and distribute your dekstop applications on the Universal Windows Platf...Bring and distribute your dekstop applications on the Universal Windows Platf...
Bring and distribute your dekstop applications on the Universal Windows Platf...Matteo Pagani
Ā 
Docker dev ops for cd meetup 12-14
Docker dev ops for cd meetup 12-14Docker dev ops for cd meetup 12-14
Docker dev ops for cd meetup 12-14Simon Storm
Ā 

Similar to Azure App Service for Windows Container (20)

Rome .NET Conference 2024 - Remote Conference
Rome .NET Conference 2024  - Remote ConferenceRome .NET Conference 2024  - Remote Conference
Rome .NET Conference 2024 - Remote Conference
Ā 
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
Ā 
Development workflow guide for building docker apps
Development workflow guide for building docker appsDevelopment workflow guide for building docker apps
Development workflow guide for building docker apps
Ā 
Development workflow guide for building docker apps
Development workflow guide for building docker appsDevelopment workflow guide for building docker apps
Development workflow guide for building docker apps
Ā 
Win ce 6.0 development (1)
Win ce 6.0 development (1)Win ce 6.0 development (1)
Win ce 6.0 development (1)
Ā 
Goā€¦Running Kentico CMS on Windows Azure
Goā€¦Running Kentico CMS on Windows AzureGoā€¦Running Kentico CMS on Windows Azure
Goā€¦Running Kentico CMS on Windows Azure
Ā 
Docker slides
Docker slidesDocker slides
Docker slides
Ā 
Dockerization of Azure Platform
Dockerization of Azure PlatformDockerization of Azure Platform
Dockerization of Azure Platform
Ā 
Using and extending Alfresco Content Application
Using and extending Alfresco Content ApplicationUsing and extending Alfresco Content Application
Using and extending Alfresco Content Application
Ā 
AWS Atlanta meetup Build Tools - Code Commit, Code Build, Code Deploy
AWS Atlanta meetup Build Tools - Code Commit, Code Build, Code DeployAWS Atlanta meetup Build Tools - Code Commit, Code Build, Code Deploy
AWS Atlanta meetup Build Tools - Code Commit, Code Build, Code Deploy
Ā 
Introduction to angular | Concepts and Environment setup
Introduction to angular | Concepts and Environment setupIntroduction to angular | Concepts and Environment setup
Introduction to angular | Concepts and Environment setup
Ā 
AWS CodeDeploy
AWS CodeDeploy AWS CodeDeploy
AWS CodeDeploy
Ā 
Introduction to Containers & Diving a little deeper into the benefits of Con...
 Introduction to Containers & Diving a little deeper into the benefits of Con... Introduction to Containers & Diving a little deeper into the benefits of Con...
Introduction to Containers & Diving a little deeper into the benefits of Con...
Ā 
Modernizing existing .NET applications with Windows Containers and Azure cloud
Modernizing existing .NET applications with Windows Containers and Azure cloudModernizing existing .NET applications with Windows Containers and Azure cloud
Modernizing existing .NET applications with Windows Containers and Azure cloud
Ā 
Chapter6 web apps-tomcat
Chapter6 web apps-tomcatChapter6 web apps-tomcat
Chapter6 web apps-tomcat
Ā 
Building and Deployment of Drupal sites with Features and Context
Building and Deployment of Drupal sites with Features and ContextBuilding and Deployment of Drupal sites with Features and Context
Building and Deployment of Drupal sites with Features and Context
Ā 
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
Ā 
Bring and distribute your dekstop applications on the Universal Windows Platf...
Bring and distribute your dekstop applications on the Universal Windows Platf...Bring and distribute your dekstop applications on the Universal Windows Platf...
Bring and distribute your dekstop applications on the Universal Windows Platf...
Ā 
Docker dev ops for cd meetup 12-14
Docker dev ops for cd meetup 12-14Docker dev ops for cd meetup 12-14
Docker dev ops for cd meetup 12-14
Ā 
Cloud computing
Cloud computingCloud computing
Cloud computing
Ā 

More from Krunal Trivedi

Certifications for Azure Developers
Certifications for Azure DevelopersCertifications for Azure Developers
Certifications for Azure DevelopersKrunal Trivedi
Ā 
Azure Functions - Serverless Computing
Azure Functions - Serverless ComputingAzure Functions - Serverless Computing
Azure Functions - Serverless ComputingKrunal Trivedi
Ā 
Chat application with Azure SignalR Service
Chat application with Azure SignalR ServiceChat application with Azure SignalR Service
Chat application with Azure SignalR ServiceKrunal Trivedi
Ā 
Implementing enterprise cloud scenarios with Microsoft cloud services and pla...
Implementing enterprise cloud scenarios with Microsoft cloud services and pla...Implementing enterprise cloud scenarios with Microsoft cloud services and pla...
Implementing enterprise cloud scenarios with Microsoft cloud services and pla...Krunal Trivedi
Ā 
High Availability in Microsoft Azure
High Availability in Microsoft AzureHigh Availability in Microsoft Azure
High Availability in Microsoft AzureKrunal Trivedi
Ā 
Windows azure active directory
Windows azure active directoryWindows azure active directory
Windows azure active directoryKrunal Trivedi
Ā 
Windows Azure Active Directory
Windows Azure Active DirectoryWindows Azure Active Directory
Windows Azure Active DirectoryKrunal Trivedi
Ā 
Web api 2 With MVC 5 With TrainerKrunal
Web api 2 With MVC 5 With TrainerKrunalWeb api 2 With MVC 5 With TrainerKrunal
Web api 2 With MVC 5 With TrainerKrunalKrunal Trivedi
Ā 
MVC 3-RAZOR Validation
MVC 3-RAZOR ValidationMVC 3-RAZOR Validation
MVC 3-RAZOR ValidationKrunal Trivedi
Ā 
Mef with meta data and lazy loading
Mef with meta data and lazy loadingMef with meta data and lazy loading
Mef with meta data and lazy loadingKrunal Trivedi
Ā 

More from Krunal Trivedi (11)

Certifications for Azure Developers
Certifications for Azure DevelopersCertifications for Azure Developers
Certifications for Azure Developers
Ā 
Azure Functions - Serverless Computing
Azure Functions - Serverless ComputingAzure Functions - Serverless Computing
Azure Functions - Serverless Computing
Ā 
Chat application with Azure SignalR Service
Chat application with Azure SignalR ServiceChat application with Azure SignalR Service
Chat application with Azure SignalR Service
Ā 
Implementing enterprise cloud scenarios with Microsoft cloud services and pla...
Implementing enterprise cloud scenarios with Microsoft cloud services and pla...Implementing enterprise cloud scenarios with Microsoft cloud services and pla...
Implementing enterprise cloud scenarios with Microsoft cloud services and pla...
Ā 
High Availability in Microsoft Azure
High Availability in Microsoft AzureHigh Availability in Microsoft Azure
High Availability in Microsoft Azure
Ā 
Windows azure active directory
Windows azure active directoryWindows azure active directory
Windows azure active directory
Ā 
Windows Azure Active Directory
Windows Azure Active DirectoryWindows Azure Active Directory
Windows Azure Active Directory
Ā 
Web api 2 With MVC 5 With TrainerKrunal
Web api 2 With MVC 5 With TrainerKrunalWeb api 2 With MVC 5 With TrainerKrunal
Web api 2 With MVC 5 With TrainerKrunal
Ā 
MVC 3-RAZOR Validation
MVC 3-RAZOR ValidationMVC 3-RAZOR Validation
MVC 3-RAZOR Validation
Ā 
Wcf routing kt
Wcf routing ktWcf routing kt
Wcf routing kt
Ā 
Mef with meta data and lazy loading
Mef with meta data and lazy loadingMef with meta data and lazy loading
Mef with meta data and lazy loading
Ā 

Recently uploaded

Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)wesley chun
Ā 
šŸ¬ The future of MySQL is Postgres šŸ˜
šŸ¬  The future of MySQL is Postgres   šŸ˜šŸ¬  The future of MySQL is Postgres   šŸ˜
šŸ¬ The future of MySQL is Postgres šŸ˜RTylerCroy
Ā 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024The Digital Insurer
Ā 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsJoaquim Jorge
Ā 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
Ā 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
Ā 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
Ā 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
Ā 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...DianaGray10
Ā 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
Ā 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
Ā 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
Ā 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
Ā 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
Ā 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
Ā 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
Ā 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024The Digital Insurer
Ā 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc
Ā 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAndrey Devyatkin
Ā 

Recently uploaded (20)

Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
Ā 
šŸ¬ The future of MySQL is Postgres šŸ˜
šŸ¬  The future of MySQL is Postgres   šŸ˜šŸ¬  The future of MySQL is Postgres   šŸ˜
šŸ¬ The future of MySQL is Postgres šŸ˜
Ā 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Ā 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
Ā 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
Ā 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
Ā 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
Ā 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
Ā 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
Ā 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Ā 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
Ā 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
Ā 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
Ā 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
Ā 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
Ā 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Ā 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
Ā 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
Ā 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
Ā 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
Ā 

Azure App Service for Windows Container

  • 1. Azure App Service for Windows Container
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.
  • 19.
  • 20.
  • 21.
  • 22.
  • 23.
  • 24.
  • 25.
  • 26.
  • 27.
  • 28.
  • 29.
  • 30. ā€¢ Demo : Installing Custom Fontsā€¦.
  • 31. Open the solution in the Visual Studio
  • 32. ā€¢ The sample project contains a simple ASP.NET application that uses a custom font that is installed into the Windows font library. ā€¢ It's not necessary to install fonts, but it's an example of an app that is integrated with the underlying OS. ā€¢ To migrate such an app to App Service, you either rearchitect your code to remove the integration, or migrate it as-is in a custom Windows container.
  • 33. Install the Font : In Windows Explorer, navigate to custom-font-win-container- master/CustomFontSample, right-click FrederickatheGreat-Regular.ttf, and select Install.
  • 34. Ctrl + F5 to run application without debugging.
  • 35.
  • 36.
  • 38.
  • 39.
  • 40. Publish it to DockerHub
  • 41.
  • 42.
  • 43. Create a Web App for Containerā€¦and use your dockerized imageā€¦.
  • 44.
  • 45. ā€¢ In many cases, your existing .NET applications are not based just on your .NET Code solution and the .NET Framework libraries but also based on additional artifacts from Windows that have to be enabled (such as IIS, .NET WCF HTTP Activation, Server roles, etc.) and even additional components from third parties that you need to install in windows through .MSI setups.
  • 46. ā€¢ In order to install an MSI within a Windows Container you just need to copy in the .msi file and run msiexec to install it.
  • 47. There are just three lines of Dockerfile instructions: ā€¢ FROM specifies the base image to use, in this case a specific version of the ASP.NET image using Windows Server Core. ā€¢ COPY copies the existing MSI from the local machine into the Docker image ā€¢ RUN installs the MSI using msiexec, with the qn switch to install silently, and passing a value to the custom RELEASENAME variable that the MSI uses.
  • 48. ā€¢ That .msi setup could install whatever dependency you might need for your application, like the .DLLS of a PDF creator library (or any other comparable case) that you might need to use from your ASP.NET application.
  • 49. Enabling Windows features in Docker images ā€¢ In order to enable Windows features or artifacts (like .NET WCF HTTP Activation, IIS configuration, etc.) in a Windows Container, you need to specify those dependencies in your dockerfile so they will be installed when the container is deployed.
  • 50. The following dockerfile would enable .NET WCF HTTP Activation in your Windows Container:
  • 51. ā€¢ The important line in that dockerfile is the line with the RUN command that specifies to add certain Windows Feature, in this case, .NET WCF HTTP Activation. Note that not all the Windows features can be activated in Windows Containers since some of them are not supported, like MSMQ or other cases.
  • 53. Navigate to the build options under Pipeline tab. Select Build definition and select the Edit option.
  • 54. Add tasks to the Agent Job and in the Run Service, Build Service and Push Service task, authorize the Azure Subscription and update Azure Container Registry.
  • 55.
  • 56.
  • 57.
  • 58. Navigate to the Release section under the Pipeline tab. Select the release definition, Click Edit Pipeline option and then click on the Tasks section
  • 59.
  • 60.
  • 61. Under the Execute Azure SQL:DacpacTask section, select the Azure Subscription from the dropdown. Execute Azure SQL:DacpacTask: This task will deploy the dacpac to the mhcdb database so that the schema and data is configured for the backend
  • 62. Azure App Service Deploy will pull the appropriate docker image corresponding to the Build from repository specified, and then deploys the image to the Linux App Service
  • 63. Click on Variables section, update the ACR details and the SQLServer details with the details notel earlier while configuration of the environment and click on the Save button.
  • 64. Initiate the CI Build and Deployment through code commit. Click on Files section under the Repos tab and navigate to the Index.cshtml file for editing.
  • 65. Modify it and click on Commit.
  • 66. Click on Builds tab and subsequently select the build definition and again click on ellipsis to view the build in progress.
  • 67.
  • 68. The Build will generate and push the docker image of the web application to the Azure Container Registry. Once the build is completed, the build summary will be displayed.
  • 69. Navigate to the Azure portal and provide the given information.
  • 70. Navigate to the Azure Container Portal and then select the Repositories option to view the generated docker images.
  • 71. Navigate to the Release section under Pipeline tab, and double-click on the latest release displayed on the Page. Click on Logs to view the details of the release in progress.
  • 72.
  • 73. The release will deploy the docker image to the App Service based on the BuildID tagged with the docker image. Once the release is completed, the release Logs will be displayed.
  • 74. Navigate back to Azure portal and click on the overview section of App Service. Click on the link displayed under the URL field to browse the application and view the changes.