Presenter: Marcus Robinson (@techdiction), Technical Evangelist
In the old days we had physical servers with 1 OS to 1 box, then virtualisation was invented, giving higher consolidation.
There is quite a lot of waste with VMs, as each has their own RAM, disk space etc, lots of technologies have been invented to reduce this (de-duplication of storage & memory, linked clones etc).
The big advantage with containers is sharing the same OS layer, all containers share the one operating system.
One great use of containers is to get a higher density, but can also help with legacy / traditional applications as can be run in containers.
Containers are a great enabler of microservices (which helps speed up development as get away from large monolithic applications that can't be developed in one module per team / squad manner).
Expect that everyone to run Nano Server / Server Core for everything apart from Session Hosts (containers are not presently intended to be used as session hosts).
Answer: Can initiate DLL within its own container space.
Session hosts: Big debate on whether we still need session hosts in the future. Microsoft is focusing on being a platform provider, so providers such as Citrix & VMware etc can provide on top.
Docker & Microsoft
Docker Hub contains complete docker images you can download, but it doesn't mean you would necessarily this as would likely prefer to build by yourself so that you know what is running.
Illustrating starting up an IIS service running in a docker container.
Can use a load balancer in front of docker images to create a farm, NGINX is a popular load balancer for this.
A method to provide containers in a secure manner.
Docker for Windows
Not provided by Microsoft, Enables us to develop docker containers using Linux as the OS. Utilises Hyper-V, can also run on Windows 10 not limited to Windows Server.
Docker on Azure
Docker VM extension
Azure driver for docker machine
Azure Container Service
What do you do if the single VM running all the Docker containers stops working?
Additional option Docker for Azure which is currently in beta.
GUI based management of docker swarm (https://www.docker.com/products/docker-datacenter)
Sign up at http://beta.docker.com
Question: How do you apply patches to containers?
Answer: You update your base image then redeploy.
Docker in the release pipeline
Can also use services suck as Jenkins.
Example of deploying a docker build using Team Foundation Services to Azure.
Visual Studio Dev Essentials: https://developer.microsoft.com
IT Pro Cloud Essentials: https://www.itprocloudessentials.com
DevOps Fundamentals: https://channel9.msdn.com/Series/DevOps-Fundamentals
DevOps Dimensions: https://channel9.msdn.com/Shows/DevOps-Dimension
The Container Channel: https://channel9.msdn.com/Blogs/containers
Get access to free online training: https://mva.microsoft.com/training-topics/devops