Introduction to Docker on Windows with Visual Studio 2017
Learn how to use Docker on Windows to containerize your application delivery. Learn full cycle CI/CD application delivery using Docker containers, all up to production clusters running on either Azure ACS with Kubernetes or on Service Fabric.
What you'll learn
Many developers and architects are challenged with the ask to move to continuous delivery and DevOps. They also see the emerging popularity of Docker and are asked to move their new and current .Net applications to a "dockerized" solution.
In this course, Introduction to Docker on Windows with Visual Studio 2017, you'll learn how to use Docker to deliver solutions to the Windows platform.
First, you'll explore the options and capabilities Docker has to offer on the Windows platform.
Next, you'll delve into how Visual Studio 2017 simplifies the use of Docker in the development cycle.
Finally, you'll learn how to implement a delivery pipeline with Visual Studio Team Services (VSTST) or TFS to deploy to any of the target platforms, ranging from single windows server to a cluster of machines managed by cluster managers like Kubernetes or Service Fabric.
By the end of this course, you'll be able to explain how containers work on windows, how to build Docker containers to run new or existing workloads, and how to deploy your applications to different container hosting solutions on premise or in the cloud.
Table of contents
- Introduction to Docker on Windows with Visual Studio 2017 0m
- Course Objectives 1m
- What You Will Get from This Course 1m
- Course Modules 2m
- Overview 1m
- Running Containers and Docker 0m
- What Is a Container? 2m
- Containers vs. Virtual Machines 4m
- Inspecting Running Containers on Windows 5m
- Containers vs. Docker 2m
- Docker Command-line Interface 2m
- Docker Command-line 6m
- Difference Between an Image and a Container(1/2) 2m
- Difference Between an Image and a Container(2/2) 1m
- Inspecting Images and Layers 4m
- Putting It All Together 1m
- Running on Windows 1m
- Development Tools 1m
- Docker Compose 2m
- Docker Commands Needed to Understand Visual Studio 5m
- Which .Net Framework to Choose? 3m
- Container Clusters 3m
- Summary 1m
- Welcome 1m
- Introduction 1m
- Using the Docker Tools in Visual Studio 2017 2m
- Docker Files Added 2m
- The Dockerfile Debug/Release Trick 1m
- Demo: Building Containers from the Command-line 6m
- Yaml Files Added 1m
- The Yaml File Trick 2m
- Demo: Building Containers from the Command-line Using Docker-compose 6m
- The Yaml File Trick (cont.) 2m
- Demo: Show the Volume Maps on the Containers 4m
- The Yaml File Trick (cont.) 3m
- Use the Visual Studio 2017 IDE to Build Containers 4m
- Debugging Your Cross-container Solutions with Visual Studio 2017 1m
- Show How to Debug Cross-containers 9m
- Summary 1m
- Welcome 1m
- Overview 1m
- Handling Data in Containers 2m
- Setting up Volume Mappings to Manage State 2m
- Demo: Using the Volume Mapping Commands 7m
- Running SQL Server in a Container 2m
- Demo: Creating and Running SQL Server Images 7m
- Leveraging Immutability for Testing 3m
- Demo: Integration Test Using a SQL Container That Resets After the Tests 7m
- Summary 1m
- Introduction 1m
- Overview 1m
- Understanding Containerized Builds 0m
- Running a Build in VSTS 4m
- Setting up the Build 2m
- Configuring Build Agents to Build Containers 6m
- Setup a Custom Build Agent 4m
- Setup a VSTS Build for Your Containers 6m
- Understanding Tags 2m
- Deploying Your Containers Using the Release Pipeline 2m
- Deploy Your Containers to a Container Host 11m
- Pushing Images to Azure Container Registry or Dockerhub 3m
- Create and Use an Azure Container Registry 6m
- Summary 1m
- Introduction 0m
- Overview 1m
- Why Do You Need Clusters? 1m
- Understanding Azure ACS 2m
- Creating and Configuring a Cluster 3m
- Create an ACS Cluster Running Kubernetes 7m
- Deploying Your App to the Cluster by Hand 1m
- Kubernetes Cluster Anatomy 3m
- Deploy to Kubernetes 1m
- Deploy Containers to Kubernetes Cluster by Hand 8m
- Deploying Your App to the Cluster Using VSTS 1m
- Deploy Containers to Kubernetes Cluster with VSTS 8m
- Setting up Continuous Delivery and Zero Downtime Deployments 1m
- Zero Downtime Deployment Using VSTS and ACS with Kubernetes 8m
- Scaling Your Apps and the Cluster 1m
- Scaling Your App and the ACS Cluster 5m
- Alternative Cluster Solutions 2m
- Summary 1m
- Introduction 1m
- Overview 1m
- Understanding Azure Service Fabric 2m
- Same Rules Apply as to ACS 1m
- Creating and Configuring a Cluster 1m
- Create a Service Fabric Cluster 4m
- Deploying Your App to the Cluster by Hand 2m
- Deploy Containers to Service Fabric by Hand 8m
- Deploying Your App to the Cluster Using VSTS 2m
- Deploy Containers to Service Fabric with VSTS 6m
- Summary 1m
- Course Modules 2m
- Course Completion 1m
Course FAQ
Docker is a set PaaS (platform as a service) products that delivers software through containers. It's basically a container engine that helps automate application deployment and operating system level virtualization.
Docker and its containers have revolutionized software development by creating more consistency, efficiency, and standardization through repeatable development, build, test, and production environments! It opens the way for continuous integration and continous delivery (CI/CD).
You will learn full cycle CI/CD application delivery using Docker containers by:
- Being introduced to Docker, Visual Studio, and the Windows Platform
- Using Docker tools in Visual Sutdio
- Handling data in containers & testing
- Learning the continuous delivery pipeline in VSTS
- Deploying to Azure Container Services (ACS)
- Much more
This course is for anyone who wants to learn how to use Docker on Windows with Visual Studio. It will be especially useful to developers and architects trying to move to continuous delivery and DevOps.
You should understand some basic C# and basic ASP.NET before beginning this course. If you need some refreshers, check out this C# fundamentals course and/or this ASP.NET course.