The only source of knowledge is experience

Tag: Docker

Just released: Introduction to Docker on Windows with Visual Studio 2017

In this new course, I teach you how to use Docker to deliver solutions to the Windows platform. First, you’ll explore the options and capabilities Docker offers 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.

Here is a brief video introduction that gives you an idea of the course.

Here is the outline of the course:

Module 1: Introduction to Docker on Windows with Visual Studio 2017

  • Running Containers and Docker
  • What Is a Container?
  • Containers vs. Virtual Machines
  • Containers vs. Docker
  • Docker Command-line
  • Difference Between an Image and a Container
  • Inspecting Images and Layers
  • Running on Windows
  • Development Tools
  • Docker Compose
  • Docker Commands Needed to Understand Visual Studio
  • Which .Net Framework to Choose?
  • Container Clusters

Module 2: Docker and Visual Studio

  • Using the Docker Tools in Visual Studio 2017
  • Docker Files Added
  • The Docker file Debug/Release Trick
  • Yaml Files Added
  • The Yaml File Trick
  • Volume Maps on the Containers
  • Use the Visual Studio 2017 IDE to Build Containers
  • Debugging Your Cross-container Solutions with Visual Studio 2017

Module 3: Handling Data in Containers & Testing

  • Handling Data in Containers
  • Setting up Volume Mappings to Manage State
  • Using the Volume Mapping Commands
  • Running SQL Server in a Container
  • Creating and Running SQL Server Images
  • Leveraging Immutability for Testing
  • Integration Test Using a SQL Container That Resets After the Tests

Module 4: Docker and Your Continuous Delivery Pipeline in VSTS

  • Understanding Containerized Builds
  • Running a Build in VSTS
  • Setting up the Build
  • Configuring Build Agents to Build Containers
  • Setup a Custom Build Agent
  • Setup a VSTS Build for Your Containers
  • Understanding Tags
  • Deploying Your Containers Using the Release Pipeline
  • Deploy Your Containers to a Container Host
  • Pushing Images to Azure Container Registry or Dockerhub
  • Create and Use an Azure Container Registry

Module 5: Deploying to Azure Container Services (ACS)

  • Why Do You Need Clusters?
  • Understanding Azure ACS
  • Create an ACS Cluster Running Kubernetes
  • Deploying Your App to the Cluster by Hand
  • Kubernetes Cluster Anatomy
  • Deploy Containers to Kubernetes Cluster by Hand
  • Deploying Your App to the Cluster Using VSTS
  • Zero Downtime Deployment Using VSTS and ACS with Kubernetes
  • Scaling Your Apps and the Cluster
  • Alternative Cluster Solutions

Module 6: Deploying to Azure Service Fabric

  • Understanding Azure Service Fabric
  • Same Rules Apply as to ACS
  • Create a Service Fabric Cluster
  • Deploy Containers to Service Fabric by Hand
  • Deploy Containers to Service Fabric with VSTS

You can find the course here at the PluralSight website: https://app.pluralsight.com/library/courses/docker-visual-studio-2017-windows

Not yet a PluralSight subscriber? No worries, you can still watch the course for free with a trial subscription.

Hope it helps to get you up to speed with Docker on Windows!

Optimizing your (Windows) docker images with multi staged Docker builds

Last week I visited Docker con 2017 where Docker announced a whole lot of new features, under which a new feature in the docker build command, called multi staged builds.

These multi staged builds are extremely convenient to create images that are of minimum size. I am mostly using Docker on Windows, but this feature works on any version of Docker. When using Windows images, you might have noticed they are pretty large in size. Making your image as small as possible makes a big difference. So I will show you, based on the example I have used multiple times, how to create an optimized image to run an existing ASP.NET MVC 4.x on Windows Server Core.

Continue reading

How to work around docker-compose DNS issue with docker on windows

When you create a new docker image that is part of a container composition that you want to run on one and the same host, you can run into the issue that the independent containers are not able to reach each other via DNS resolving.

So lets assume you have the following compose file where you want the web tier to be able to reach the database tier given the following compose file:

Continue reading

Deploying ASP.NET 4.5 to Docker on Windows

At the moment of this writing you can search the internet on ASP.NET and docker and all you will find is how to deploy ASP.NET Core applications to a Linux docker container. Although I love the initiative of ASP.NET core, I do believe that ASP.NET 4.5 is something many of you know and love already and nobody talks about how we can leverage docker on windows to run this full version of ASP.NET

To get you started we need to have a Windows version that is capable of natively running docker. With natively running docker I mean that docker is build into the OS. So no use of docker for windows tools, since we don’t want Linux containers, we want to run windows containers! At this moment you can use Windows 10 Anniversary edition and Windows Server 2016 Technical Preview 5 to go through the steps that I describe here to get your ASP.NET 4.5 website running in a docker on windows container.

Continue reading

© 2023 Fluentbytes

Theme by Anders NorenUp ↑