Web App for Containers

Video Activity
Join over 3 million cybersecurity professionals advancing their career
Sign up with
Required fields are marked with an *
or

Already have an account? Sign In »

Time
14 hours 28 minutes
Difficulty
Intermediate
CEU/CPE
15
Video Transcription
00:00
>> Hello Cybrarians.
00:00
Welcome to lesson 5.3 of Module 5 of this course titled,
00:00
AZ-301: Microsoft Azure Architect Design.
00:00
Here are the objectives that we'll cover in this video.
00:00
We'll start by introducing Web App for Containers.
00:00
Then we'll give a review of Azure App Services.
00:00
This is because Web App for Containers,
00:00
is a functionality of Azure app Service.
00:00
It makes sense for us to review some of
00:00
the functionalities of the underlying service.
00:00
Will then talk about some features and
00:00
functionalities of Azure Web App for Containers.
00:00
We'll talk about Multi-Container Web App
00:00
hosting when using this option,
00:00
Let's get into this.
00:00
Let's talk about Web App for Containers for some minutes.
00:00
Web App for Containers is
00:00
a functionality of the Azure App Service
00:00
that we already know about.
00:00
What is functionality allows us to do,
00:00
is that we can easily deploy and run
00:00
containerized applications on Windows and
00:00
Linux host that Azure App Service uses
00:00
without having to directly manage the host themselves.
00:00
What is also means is that we can take advantage of
00:00
the built-in load balancing and
00:00
auto-scaling capabilities of Azure App Service.
00:00
Actually, we can take advantage of all the other
00:00
which functionalities built into Azure App Service.
00:00
Web App for Containers as support the automation and
00:00
simplification of container image deployment
00:00
through continuous integration and
00:00
continuous deployment capabilities with
00:00
Docker Hub and Azure Container Registry.
00:00
Web App for Containers as I mentioned earlier,
00:00
it's a functionality of the Azure App Service.
00:00
A lot of the capabilities that it has,
00:00
it's comes from the capabilities
00:00
that Azure App Service has.
00:00
Azure App Service as we know,
00:00
is a platform as a service,
00:00
which means that we don't have to
00:00
concern ourselves with infrastructure
00:00
maintenance like OS patching or
00:00
capacity provisioning that's managed for us by Microsoft.
00:00
Azure App Service is optimized for hosting
00:00
web applications and mobile application backends.
00:00
It also makes sense that if we're going to be
00:00
running containerized applications on this service,
00:00
they should follow the same pattern of being
00:00
a web service or a mobile backends.
00:00
Azure App Service also has
00:00
options that allows us to deploy into
00:00
an isolated virtual network
00:00
That's called an App Service Environment.
00:00
When it comes to the features of Web App for Containers,
00:00
we mentioned earlier,
00:00
but Azure App Service supports hosting
00:00
our web applications on Windows or Linux hosts.
00:00
What this means when we talk about
00:00
containerization is that we can
00:00
run Windows on Linux-based containers on this service.
00:00
Now, with regards to deployment options,
00:00
we have two options.
00:00
We can either do a single container deployment option,
00:00
which can be used to deploy
00:00
a single application that's
00:00
running in a single container,
00:00
or we have the Docker Compose option,
00:00
which allows us to deploy a solution based on
00:00
multiple containers using the Docker Compose file format.
00:00
Regardless of the deployment option that we'll select,
00:00
we can deploy container images
00:00
from different image sources.
00:00
For example, we can
00:00
deploy images from the Azure Container Registry,
00:00
which allows us to host our own private images in
00:00
Azure or images that are approved by our organization.
00:00
We can also deploy images from the Docker Hub,
00:00
which is the official Docker Repository,
00:00
which support either a private or a public mode.
00:00
An Azure App Service supports
00:00
both modes or we can
00:00
deploy directly from another private registry.
00:00
This option allows us to be able to use
00:00
other private repository as
00:00
long as they are reachable by Azure App Service.
00:00
As mentioned earlier,
00:00
Web App for Containers also
00:00
support automation and simplification
00:00
of container image deployments to CICD capabilities.
00:00
The way that App Service does this,
00:00
is that it's going to create an association between
00:00
our App Service and the selected repository so
00:00
that our applications are automatically updated
00:00
each time that a source container image
00:00
is updated in the repository.
00:00
We can then shadow performance and
00:00
quality tests in the staging environment.
00:00
We can use other functionalities of
00:00
Azure App Service like deployment slots to swap staging
00:00
environments to production environment within seconds and
00:00
even to roll back previous versions without any downtime.
00:00
Now the final point that I have on the slide,
00:00
it's more of a use case rather than a feature.
00:00
This functionality allows developers
00:00
to exercise more controlled,
00:00
not just over the application code
00:00
but other environmental options.
00:00
What that means is, as a developer,
00:00
you are looking to deploy
00:00
a web application in mobile backend,
00:00
when you're going to be using some different packages
00:00
or onetime framework or tune-in that
00:00
may not necessarily be supported
00:00
natively on the apps that Azure App Service uses,
00:00
Azure Web App for Containers might be the option for you.
00:00
Let's look a little bit more at
00:00
multi-container deployment option
00:00
that we mentioned earlier.
00:00
This option uses a Docker- Compose file format.
00:00
Using this option, we can deploy
00:00
web applications that are composed of
00:00
multiple Docker formatted containers
00:00
to a single virtual machine hosts.
00:00
That is very important to understand that this is not
00:00
orchestration across multiple hosts
00:00
that something like Kubernetes can offer.
00:00
For example, if we deploy
00:00
a multi-container application on
00:00
Azure App Service and a scaling event occurs,
00:00
instances of a multi-container application
00:00
will be created on
00:00
different virtual machine host without
00:00
any integration between the container instances
00:00
that are running on individual hosts.
00:00
What that means is that it is
00:00
recommended to use other Azure services.
00:00
For example, if we're hosting
00:00
web applications front-end as
00:00
a container on Azure App Service,
00:00
we can use Azure database for my SQL or
00:00
Azure SQL database for data needs.
00:00
This also helps to optimize for scale and performance.
00:00
Now, that's been said,
00:00
here's some support and application patterns that we
00:00
can use when talking about multi-container scenario.
00:00
For example, hosting a service container and
00:00
a data base container running on
00:00
the same host or thin
00:00
a service container and database cache container
00:00
running on the same host,
00:00
or hosting proxy container is
00:00
service container and a database container
00:00
running on the same host.
00:00
But the main thing that we need to emphasize is that,
00:00
it's for single host.
00:00
This does not do orchestration.
00:00
This brings me to the end of this lesson.
00:00
Thanks very much for watching,
00:00
and I'll see you in the next lesson.
Up Next