A container is a standard unit of software that packages code and all its dependencies so the application runs quickly and reliably from one computing environment to another.
A Docker container image is a lightweight, standalone, executable package of software that includes everything needed to run an application: code, runtime, system tools, system libraries and settings.
In this module, you will learn about Container fundamentals.
- Containers Overview
- Containers versus Virtual Machines
- Container Fundamentals
- Docker Editions
Windows and Linux Containers
Container technology is supported in both Windows and Linux. In this module you will learn how to prepare a Windows and a Linux host to run containers.
- Windows Containers
- Deploy Windows Container Host
- Linux Containers on Windows
- Linux Containers
Docker is the leader in container software and provides the platform for you to run your containers. In this module, you will learn
how to create and run containers with Docker.
You will also take a look at other technologies provided by Docker to help you with container management: Docker Hub, Docker Compose and Docker Swarm.
- Docker Overview
- Docker Commands
- Container Networking
- Docker Hub
- Docker Compose
- Docker Swarm
Applications in Containers
Even though this course does not target developers, even for IT Pros it is important to understand applications and their architecture,
especially when working with containers. This module gives you an overview of the evolution of software architecture and what an ideal container application looks like.
- Software Architecture Evolution
- .NET Core versus .NET Framework
- Migrate Existing Applications
- Databases and Containers
Kubernetes is an open-source orchestration tool that will help you deploy and manage your containers across several different hosts.
Kubernetes uses a declarative approach that lets you specify what you want to deploy. Kubernetes then creates all the necessary objects for you.
In this module you will learn about the various components within a Kubernetes cluster and the different methods to run your cluster.
You will also take a look at basic Kubernetes resources like pods and volumes.
- Kubernetes Overview
- Kubernetes Cluster
- Cluster Hosting Options
- Azure Kubernetes Service
- Kubernetes Building Blocks: Pods, Volumes
Container Deployment with Kubernetes
Once your cluster is up and running, you need to manage your containers. Deployments guarantee that the necessary pods are always available. They provide an easy update method and let
you scale your deployment by adding replicas. Services make sure you can easily communicate with the applications in your cluster, no matter what pods are active.
- Update a Deployment
- Networking in Kubernetes
- AKS Networking Options
Container Management with Kubernetes
An Ingress Controller allows you to setup a load balancing solution to forward external traffic to your Kubernetes services. Sensitive information can be provided to a container through the use of secrets.
With namespaces you can group resources in your cluster for extra security or to control network traffic routing.
- Secrets and ConfigMaps
- Network Policies
- Health Monitoring
- Kubernetes Dashboard
Container Technology in Azure
Azure provides a whole infrastructure for managing and hosting containers. From simple basic containers (Azure Container Instances) that can be deployed without any configuration,
to advanced services that built and manage entire Kubernetes clusters for you.
- Azure Container Registry
- Azure Container Instances
- Web App for Containers
In this course students will learn to build Docker containers on both Windows and Linux. They will use Docker Compose and Docker Swarm to manage and maintain multi-layered applications on different container hosts.
Students will deploy a Kubernetes cluster and learn how Kubernetes handles the deployment of applications across various nodes.
Finally, students will take a look at the Azure services related to container management and maintenance.
This course is intended for experienced IT professionals who are interested in container technology and want to learn about Docker and Kubernetes.
The technologies learned in the course can be useful for both on-prem deployments or environments that operate in the Azure Cloud.