SlideShare a Scribd company logo
Docker &
Azure Container Service
Tomy Rhymond
Sr. Consultant – Enterprise Architect | Bennett Adelson
trhymond@bennettadelson.com
https://tomyrhymond.wordpress.com
@trhymond
A BIG thank you to the 2017 Global Sponsors!
For providing the “Stuff We All Get”!
A BIG thank you to the 2017 Global Sponsors!
For providing the “Stuff We All Get”!
Agenda
• What is Docker?
• Docker Architecture
• Docker CLI
• Azure Container Service
• Docker Implementations on Azure
• .NET Development Docker
• Demo – Visual Studio Container Tools
• Demo – Publish to Docker Container
• Demo – Docker Swarm
Container
• Package software into standardized units for development, shipment and
deployment
• Available for both Windows and Linux based applications
• Isolate software from its environments
Docker
• Leading open-source containerization platform
• This guarantees that it will always run the same, regardless
of the environment it is running in.
• Eliminate “works on my machine” problem
• Supported natively in Azure
• Deploy both microservices and traditional apps anywhere
without costly rewrites.
• Isolate apps in containers to eliminate conflicts and enhance
security.
Docker Architecture
• Docker utilizes a client-server architecture.
• You execute Docker commands through a
Docker client.
• The client uses REST commands to
communicate with the Docker daemon
running on a Docker host .
• These commands can be used to push, pull
and create Docker images, to run them in
containers, and to manage those
containers.
• Images are stored in Docker registries,
which can be public or private, local or
remote.
Docker CLI
• The Docker Client, also known as
the Docker CLI, is the primary tool
you use to manage Docker
containers.
• Command-line interface for
Docker, available for Linux, OS X,
and Windows (available separately
or as part of Docker Toolbox)
• On Windows, use Command Line or
Powershell to manage Docker CLI
Azure Container Service
• Azure Container Service makes it simpler for you to create, configure, and manage a
cluster of virtual machines that are preconfigured to run containerized applications.
• Provides robust, ready-to-use Docker hosting environment
• Uses open-source orchestration tools (DC/OS and Swarm)
Container Orchestration
• Facilitates deployment and management of containers
• Containers by design are intended to be deployed in large
volumes with some applications using dozens to even
thousands of containers
• With this type of scale, automating container deployment and
management with orchestration software becomes necessary
• Azure Container service supports Kubernetes, DC/OS, and
Docker Swarm
Container Clusters
• Facilitate load balancing, scalability, and high availability
• A cluster is composed of master nodes which control the orchestration,
and agent nodes that host the containers
DC/OS
• Datacenter Operating System built on Apache Mesos
• Creates logical data centers and abstracts underlying hardware
• Provides resources traditionally provided by infrastructure, including
networking, DNS, and load balancing
• Natively supported by Azure Container Service
Docker Swarm
• Docker’s own orchestration engine
• Current releases of the Docker engine have
“Swarm Mode” built in and can many of the
same things that other orchestration engines
do
• Lacks a GUI, but makes up for it with tight
integration with Docker
• Natively supported by Azure Container Service
Kubernetes
• Open-source orchestration engine from Google
• Provides a robust framework for container orchestration, yet remains
lightweight and scalable
• Supported by Azure Container Service and tightly integrated with ACS,
allowing Kubernetes to modify deployments
DevOps with Docker
Demo 1 - Visual Studio Container Tools
• Visual Studio 2017
• Create Web / Service WorkLoad
• Run, Debug, Test on Linux Container
• Multi-Container Debugging
• Edit/Refresh Code
• Scaffold Docker Assets
• Container for .NET Framework
Demo 2 – Running Container on Azure
Demo 3 – CI/CD Pipeline with DC/OS
• Code changes are committed to the source code repository
• GitHub triggers a build in Visual Studio Team Services
• Visual Studio Team Services gets the latest version of the sources and builds all the images that
compose the application
• Visual Studio Team Services pushes each image to a Docker registry created using the Azure
Container Registry service
• Visual Studio Team Services triggers a new release
• The release runs some commands using SSH on the Azure container service cluster master
node
• Docker Swarm on the cluster pulls the latest version of the images
• The new version of the application is deployed using Docker Compose
Tomy Rhymond
Sr. Consultant – Architect | Bennett Adelson
trhymond@bennettadelson.com
https://tomyrhymond.wordpress.com
@trhymond
Questions?

More Related Content

PPTX
Dev ops
PPTX
ACM Gazi Docker?
PPTX
Docker and Devops
PDF
Digital Transformation with Docker, Cloud, and DevOps: How JCPenney Handles B...
PDF
Jenkins + Docker = Continuous Improvement
PDF
DCSF 19 Microservices API: Routing Across Any Infrastructure
PDF
Using Rancher and Docker with RightScale at Industrie IT
PDF
DCSF 19 Docker Enterprise Platform and Architecture
Dev ops
ACM Gazi Docker?
Docker and Devops
Digital Transformation with Docker, Cloud, and DevOps: How JCPenney Handles B...
Jenkins + Docker = Continuous Improvement
DCSF 19 Microservices API: Routing Across Any Infrastructure
Using Rancher and Docker with RightScale at Industrie IT
DCSF 19 Docker Enterprise Platform and Architecture

What's hot (20)

PDF
Microservices Docker @Bonn Agile
PPTX
Introduction To Docker, Docker Compose, Docker Swarm
PPTX
CI CD using Docker and Jenkins
PDF
Dockercon 2018 Announcement
PDF
Making Friendly Microservices by Michele Titlol
PPT
Docker swarm
PDF
DCEU 18: App-in-a-Box with Docker Application Packages
PPTX
Docker In Cloud
PDF
Deep Dive on Continuous Integration and Continuous Delivery in Anypoint Platf...
PPTX
DockerCon 16 - Moby's Cool Hack Session
PDF
What's New in Docker
PDF
Containers & Cloud Native Ops Cloud Foundry Approach
PPTX
Oracle Code Keynote with Thomas Kurian
PPTX
Delivering Developer Tools at Scale
PDF
56K.cloud Docker Training
PDF
Automating CICD Pipeline with GitLab and Docker Containers for Java Applications
PDF
DockerCon SF 2015: From Months to Minutes
PDF
Automation CI CD with Gitlab, Java, docker on Hidora - Jelastic
PPTX
SkyBase - a Devops Platform for Hybrid Cloud
PPTX
Why to docker
Microservices Docker @Bonn Agile
Introduction To Docker, Docker Compose, Docker Swarm
CI CD using Docker and Jenkins
Dockercon 2018 Announcement
Making Friendly Microservices by Michele Titlol
Docker swarm
DCEU 18: App-in-a-Box with Docker Application Packages
Docker In Cloud
Deep Dive on Continuous Integration and Continuous Delivery in Anypoint Platf...
DockerCon 16 - Moby's Cool Hack Session
What's New in Docker
Containers & Cloud Native Ops Cloud Foundry Approach
Oracle Code Keynote with Thomas Kurian
Delivering Developer Tools at Scale
56K.cloud Docker Training
Automating CICD Pipeline with GitLab and Docker Containers for Java Applications
DockerCon SF 2015: From Months to Minutes
Automation CI CD with Gitlab, Java, docker on Hidora - Jelastic
SkyBase - a Devops Platform for Hybrid Cloud
Why to docker
Ad

Similar to Docker (20)

PPTX
Containerization with Azure
PPTX
Containerization in microsoft azure
PPTX
Containerization with Microsoft Azure
PDF
Open source based container solution in Azure - May Docker Meetup
PDF
Experts Live Europe 2017 - Why you should care about Docker - an introduction
PPTX
Container on azure
PPTX
Docker y azure container service
PPTX
Docker Timisoara: Dockercon19 recap slides, 23 may 2019
PPTX
Intro to docker and kubernetes
PPTX
Docker and Azure Kubernetes service.pptx
PPTX
ma-formation-en-Docker-jlklk,nknkjn.pptx
PDF
Docker Indy: Dockercon 2019 Recap and Docker CLI Plugins
PPTX
Docker 101
PPTX
Docker intro
PDF
Alibaba Cloud Conference 2016 - Docker Enterprise
PDF
Docker and OpenStack Boston Meetup
PPTX
SS Introduction to Docker
PPTX
Docker-Hanoi @DKT , Presentation about Docker Ecosystem
PPTX
Introduction to Docker - 2017
PPTX
This will show docker history details Ppt.pptx
Containerization with Azure
Containerization in microsoft azure
Containerization with Microsoft Azure
Open source based container solution in Azure - May Docker Meetup
Experts Live Europe 2017 - Why you should care about Docker - an introduction
Container on azure
Docker y azure container service
Docker Timisoara: Dockercon19 recap slides, 23 may 2019
Intro to docker and kubernetes
Docker and Azure Kubernetes service.pptx
ma-formation-en-Docker-jlklk,nknkjn.pptx
Docker Indy: Dockercon 2019 Recap and Docker CLI Plugins
Docker 101
Docker intro
Alibaba Cloud Conference 2016 - Docker Enterprise
Docker and OpenStack Boston Meetup
SS Introduction to Docker
Docker-Hanoi @DKT , Presentation about Docker Ecosystem
Introduction to Docker - 2017
This will show docker history details Ppt.pptx
Ad

Recently uploaded (20)

PDF
Building Integrated photovoltaic BIPV_UPV.pdf
PPTX
PA Analog/Digital System: The Backbone of Modern Surveillance and Communication
PDF
Per capita expenditure prediction using model stacking based on satellite ima...
PPTX
A Presentation on Artificial Intelligence
PPTX
Understanding_Digital_Forensics_Presentation.pptx
PDF
Network Security Unit 5.pdf for BCA BBA.
PDF
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
PDF
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
PDF
Dropbox Q2 2025 Financial Results & Investor Presentation
PDF
Empathic Computing: Creating Shared Understanding
PDF
Agricultural_Statistics_at_a_Glance_2022_0.pdf
PPTX
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
PDF
cuic standard and advanced reporting.pdf
PPTX
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
PPTX
Digital-Transformation-Roadmap-for-Companies.pptx
PDF
NewMind AI Weekly Chronicles - August'25 Week I
PDF
Advanced methodologies resolving dimensionality complications for autism neur...
PPTX
20250228 LYD VKU AI Blended-Learning.pptx
PDF
Unlocking AI with Model Context Protocol (MCP)
PDF
Machine learning based COVID-19 study performance prediction
Building Integrated photovoltaic BIPV_UPV.pdf
PA Analog/Digital System: The Backbone of Modern Surveillance and Communication
Per capita expenditure prediction using model stacking based on satellite ima...
A Presentation on Artificial Intelligence
Understanding_Digital_Forensics_Presentation.pptx
Network Security Unit 5.pdf for BCA BBA.
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
Dropbox Q2 2025 Financial Results & Investor Presentation
Empathic Computing: Creating Shared Understanding
Agricultural_Statistics_at_a_Glance_2022_0.pdf
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
cuic standard and advanced reporting.pdf
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
Digital-Transformation-Roadmap-for-Companies.pptx
NewMind AI Weekly Chronicles - August'25 Week I
Advanced methodologies resolving dimensionality complications for autism neur...
20250228 LYD VKU AI Blended-Learning.pptx
Unlocking AI with Model Context Protocol (MCP)
Machine learning based COVID-19 study performance prediction

Docker

  • 1. Docker & Azure Container Service Tomy Rhymond Sr. Consultant – Enterprise Architect | Bennett Adelson trhymond@bennettadelson.com https://tomyrhymond.wordpress.com @trhymond
  • 2. A BIG thank you to the 2017 Global Sponsors! For providing the “Stuff We All Get”! A BIG thank you to the 2017 Global Sponsors! For providing the “Stuff We All Get”!
  • 3. Agenda • What is Docker? • Docker Architecture • Docker CLI • Azure Container Service • Docker Implementations on Azure • .NET Development Docker • Demo – Visual Studio Container Tools • Demo – Publish to Docker Container • Demo – Docker Swarm
  • 4. Container • Package software into standardized units for development, shipment and deployment • Available for both Windows and Linux based applications • Isolate software from its environments
  • 5. Docker • Leading open-source containerization platform • This guarantees that it will always run the same, regardless of the environment it is running in. • Eliminate “works on my machine” problem • Supported natively in Azure • Deploy both microservices and traditional apps anywhere without costly rewrites. • Isolate apps in containers to eliminate conflicts and enhance security.
  • 6. Docker Architecture • Docker utilizes a client-server architecture. • You execute Docker commands through a Docker client. • The client uses REST commands to communicate with the Docker daemon running on a Docker host . • These commands can be used to push, pull and create Docker images, to run them in containers, and to manage those containers. • Images are stored in Docker registries, which can be public or private, local or remote.
  • 7. Docker CLI • The Docker Client, also known as the Docker CLI, is the primary tool you use to manage Docker containers. • Command-line interface for Docker, available for Linux, OS X, and Windows (available separately or as part of Docker Toolbox) • On Windows, use Command Line or Powershell to manage Docker CLI
  • 8. Azure Container Service • Azure Container Service makes it simpler for you to create, configure, and manage a cluster of virtual machines that are preconfigured to run containerized applications. • Provides robust, ready-to-use Docker hosting environment • Uses open-source orchestration tools (DC/OS and Swarm)
  • 9. Container Orchestration • Facilitates deployment and management of containers • Containers by design are intended to be deployed in large volumes with some applications using dozens to even thousands of containers • With this type of scale, automating container deployment and management with orchestration software becomes necessary • Azure Container service supports Kubernetes, DC/OS, and Docker Swarm
  • 10. Container Clusters • Facilitate load balancing, scalability, and high availability • A cluster is composed of master nodes which control the orchestration, and agent nodes that host the containers
  • 11. DC/OS • Datacenter Operating System built on Apache Mesos • Creates logical data centers and abstracts underlying hardware • Provides resources traditionally provided by infrastructure, including networking, DNS, and load balancing • Natively supported by Azure Container Service
  • 12. Docker Swarm • Docker’s own orchestration engine • Current releases of the Docker engine have “Swarm Mode” built in and can many of the same things that other orchestration engines do • Lacks a GUI, but makes up for it with tight integration with Docker • Natively supported by Azure Container Service
  • 13. Kubernetes • Open-source orchestration engine from Google • Provides a robust framework for container orchestration, yet remains lightweight and scalable • Supported by Azure Container Service and tightly integrated with ACS, allowing Kubernetes to modify deployments
  • 15. Demo 1 - Visual Studio Container Tools • Visual Studio 2017 • Create Web / Service WorkLoad • Run, Debug, Test on Linux Container • Multi-Container Debugging • Edit/Refresh Code • Scaffold Docker Assets • Container for .NET Framework
  • 16. Demo 2 – Running Container on Azure
  • 17. Demo 3 – CI/CD Pipeline with DC/OS • Code changes are committed to the source code repository • GitHub triggers a build in Visual Studio Team Services • Visual Studio Team Services gets the latest version of the sources and builds all the images that compose the application • Visual Studio Team Services pushes each image to a Docker registry created using the Azure Container Registry service • Visual Studio Team Services triggers a new release • The release runs some commands using SSH on the Azure container service cluster master node • Docker Swarm on the cluster pulls the latest version of the images • The new version of the application is deployed using Docker Compose
  • 18. Tomy Rhymond Sr. Consultant – Architect | Bennett Adelson trhymond@bennettadelson.com https://tomyrhymond.wordpress.com @trhymond Questions?

Editor's Notes

  • #5: CONTAINERS Containers are an abstraction at the app layer that packages code and dependencies together. Multiple containers can run on the same machine and share the OS kernel with other containers, each running as isolated processes in user space. Containers take up less space than VMs (container images are typically tens of MBs in size), and start almost instantly. VIRTUAL MACHINES Virtual machines (VMs) are an abstraction of physical hardware turning one server into many servers. The hypervisor allows multiple VMs to run on a single machine. Each VM includes a full copy of an operating system, one or more apps, necessary binaries and libraries - taking up tens of GBs. VMs can also be slow to boot.
  • #6: Docker (www.docker.com) isn't the world's only containerization platform, but it is the most popular. It is free, open-source, and Linux-based, with Windows support (Windows Server 2016) in the works. It has earned massive mindshare in the developer community. And with Azure Container Service, you can deploy Docker containers to Azure with minimal effort. Moreover, Docker containers are easily moved between Azure and Amazon Web Services (AWS), affording developers portability between cloud platforms. Docker containers wrap up a piece of software in a complete filesystem that contains everything it needs to run Code, runtime, system tools, system libraries – anything you can install on a server.
  • #7: Docker utilizes a client-server architecture. You execute Docker commands through a Docker client such as the Docker CLI or Kitematic. The client uses REST commands to communicate with the Docker daemon running on a Docker host such as the Azure Container services. These commands can be used to push, pull (docker pull), and create Docker images, to run them in containers, and to manage those containers. Images can be built with the docker build command, and they can be stand-alone, or they can "inherit" from other images. Images are stored in Docker registries, which can be public or private, local or remote. Docker Hub is a popular public registry that is managed by Docker; it contains a "huge collection" of images that anyone may use. The docker run command runs a container using an image as a template.
  • #8: The Docker Client, also known as the Docker CLI, is the primary tool you use to manage Docker containers. You can download container images from repositories such as Docker Hub, build container images, run container instances, list container images and instances, and much more. After connecting to Azure Container Service using SSH, you can use port forwarding to execute commands locally that act on an Azure Container Service running in the cloud. In this example, the -H switch used with the docker commands forwards commands sent to port 22375 on localhost to the Azure Container Services via SSH.
  • #9: From the documentation: "Azure Container Service makes it simpler for you to create, configure, and manage a cluster of virtual machines that are preconfigured to run containerized applications. It uses an optimized configuration of popular open-source scheduling and orchestration tools. This enables you to use your existing skills, or draw upon a large and growing body of community expertise, to deploy and manage container-based applications on Microsoft Azure." ACS supports Linux containers and Windows containers. The latter rely on Windows Server 2016.
  • #10: Orchestration in the context of containers is the deployment and management of containers across infrastructure and networks. It provides the tools and software defined infrastructure needed to deploy containers. Containers by design are intended to be deployed in large volumes with some applications using dozen to even thousands of containers. With this type of scale, automating deployment and management of containers with Orchestration Software becomes necessary.
  • #11: A container cluster is intended to have redundancy for load balancing, scalability, and high availability. A cluster is composed of one or more Master Nodes which control the orchestration for scaling and delegation of tasks to the agents as well as provide monitoring. The Agent Nodes actually run the container loads.
  • #12: Datacenter Operating System is, as the name implies, an operating system for for a datacenter rather than for a phyiscal of virtual machine. DC/OS abstracts away the underlying hardware from applications and provides much of the needed infrastructure that would otherwise come from multiple disparate services on traditional networks. This enables operations and developers alike to deploy and maintain applications in a uniform fashion with less time and resources spent monitoring the supporting network and network services for those applications.
  • #13: Datacenter Operating System is, as the name implies, an operating system for for a datacenter rather than for a phyiscal of virtual machine. DC/OS abstracts away the underlying hardware from applications and provides much of the needed infrastructure that would otherwise come from multiple disparate services on traditional networks. This enables operations and developers alike to deploy and maintain applications in a uniform fashion with less time and resources spent monitoring the supporting network and network services for those applications.
  • #14: Kubernetes is an open-source platform for automating deployment, scaling, and operations of application containers across clusters of hosts, providing container-centric infrastructure. With Kubernetes, you are able to quickly and efficiently respond to customer demand: Deploy your applications quickly and predictably. Scale your applications on the fly. Seamlessly roll out new features. Optimize use of your hardware by using only the resources you need.
  • #15: Docker Inner Loop => Everything you do before you commit your code Pull the base image from Registry, such as Docker Hub Commit Source Code to Repository such as VSTS Build System takes the code, Docker described the build system., create images Docker image pushed to the registry with Environment configuration extracted During Deployment, pull the images and push to various environments
  • #16: Docker Inner Loop => Everything you do before you commit your code Pull the base image from Registry, such as Docker Hub Commit Source Code to Repository such as VSTS Build System takes the code, Docker described the build system., create images Docker image pushed to the registry with Environment configuration extracted During Deployment, pull the images and push to various environments
  • #17: Docker Inner Loop => Everything you do before you commit your code Pull the base image from Registry, such as Docker Hub Commit Source Code to Repository such as VSTS Build System takes the code, Docker described the build system., create images Docker image pushed to the registry with Environment configuration extracted During Deployment, pull the images and push to various environments