SlideShare a Scribd company logo
1 of 27
Extending Office Add-ins with the Azure Container Service
Rick Van Rousselt
#SPSSTHLM18, May 21st, 2016
Diamond
Platinum
Gold
Lunch SharePint
Email : rick.vanrousselt@outlook.com
rickvanrousselt
docker and containers
- Ligthweight, open secure
platform
- Simplify building, shipping,
running apps
- Shipping container system
for code
Virtual Machines
Each Guest OS needs:
• CPU
• RAM
• Licensing
• Maintenance
Containers
•
•
•
Docker Engine
Docker engine Docker engine
• Blueprint or definition of a container (readonly)
• Needed by docker engine to create a running instance of a
container
• Can consist out of multiple layers
Code Node.js UbuntuImage
Images
DEMO
V1 V2 V3
Why use containers
DEV TEST PROD
Why use containers
It’s just easy for us developers
• When joining an ongoing project not need to do a long
setup for a developer environment
• No need for heavy virtual machines
• Development environment is almost the same as production
Why use containers
The SharePoint Context
Why use containers
Demo
Azure Container
Service
What is the Azure Container Service
- Optimised for hosting
containers
- Easy to manage
containers at very large
scales
- Docker swarm and
DC/OS included
- Open source
DC/OS vs docker Swarm
• Large scale
• Proven in production
environments
• Complex
• Native from docker
• Standard docker
interface
Demo
What’s in it for us
Demo
If you have any more questions
Email : rick.vanrousselt@outlook.com
Twitter : @rickvanrousselt
Thank you!

More Related Content

What's hot

What's hot (20)

Containers & container orchestration
Containers & container orchestrationContainers & container orchestration
Containers & container orchestration
 
Kube what? for NodeJs developers
Kube what? for NodeJs developersKube what? for NodeJs developers
Kube what? for NodeJs developers
 
Continous Delivery to Kubernetes using Helm
Continous Delivery to Kubernetes using HelmContinous Delivery to Kubernetes using Helm
Continous Delivery to Kubernetes using Helm
 
Sebastien goasguen cloud stack and docker
Sebastien goasguen   cloud stack and dockerSebastien goasguen   cloud stack and docker
Sebastien goasguen cloud stack and docker
 
'Deploying with GlassFish & Docker'
'Deploying with GlassFish & Docker' 'Deploying with GlassFish & Docker'
'Deploying with GlassFish & Docker'
 
Aks pimarox from zero to hero
Aks pimarox from zero to heroAks pimarox from zero to hero
Aks pimarox from zero to hero
 
Deploying containerized applications with Kubeapps
Deploying containerized applications with KubeappsDeploying containerized applications with Kubeapps
Deploying containerized applications with Kubeapps
 
Embedding Containerd For Fun and Profit
Embedding Containerd For Fun and ProfitEmbedding Containerd For Fun and Profit
Embedding Containerd For Fun and Profit
 
Looking Under The Hood: containerD
Looking Under The Hood: containerDLooking Under The Hood: containerD
Looking Under The Hood: containerD
 
Lessons Learned Building a Container App Library
Lessons Learned Building a Container App LibraryLessons Learned Building a Container App Library
Lessons Learned Building a Container App Library
 
Development environments in seconds using Bitnami containers
Development environments in seconds using Bitnami containersDevelopment environments in seconds using Bitnami containers
Development environments in seconds using Bitnami containers
 
Kubernetes 101
Kubernetes 101Kubernetes 101
Kubernetes 101
 
Building CI/CD Pipelines with Jenkins and Kubernetes
Building CI/CD Pipelines with Jenkins and KubernetesBuilding CI/CD Pipelines with Jenkins and Kubernetes
Building CI/CD Pipelines with Jenkins and Kubernetes
 
Deploying and managing container-based applications with OpenStack and Kubern...
Deploying and managing container-based applications with OpenStack and Kubern...Deploying and managing container-based applications with OpenStack and Kubern...
Deploying and managing container-based applications with OpenStack and Kubern...
 
Dell Trials and Triumphs using Docker on Client Systems by Sean McGinnis and ...
Dell Trials and Triumphs using Docker on Client Systems by Sean McGinnis and ...Dell Trials and Triumphs using Docker on Client Systems by Sean McGinnis and ...
Dell Trials and Triumphs using Docker on Client Systems by Sean McGinnis and ...
 
Containers #101 : Docker ONBUILD triggers and Introduction to Docker Compose
Containers #101 : Docker ONBUILD triggers and Introduction to Docker ComposeContainers #101 : Docker ONBUILD triggers and Introduction to Docker Compose
Containers #101 : Docker ONBUILD triggers and Introduction to Docker Compose
 
Continuous Delivery to Kubernetes Using Helm
Continuous Delivery to Kubernetes Using HelmContinuous Delivery to Kubernetes Using Helm
Continuous Delivery to Kubernetes Using Helm
 
DevOps: Kubernetes + Helm with Azure
DevOps: Kubernetes + Helm with AzureDevOps: Kubernetes + Helm with Azure
DevOps: Kubernetes + Helm with Azure
 
Kubernetes CI/CD with Helm
Kubernetes CI/CD with HelmKubernetes CI/CD with Helm
Kubernetes CI/CD with Helm
 
Getting started with Azure Container Service (AKS)
Getting started with Azure Container Service (AKS)Getting started with Azure Container Service (AKS)
Getting started with Azure Container Service (AKS)
 

Viewers also liked

hrforum-2014-10 Moje agenda JR
hrforum-2014-10 Moje agenda JRhrforum-2014-10 Moje agenda JR
hrforum-2014-10 Moje agenda JR
Jana Remesova
 
LA ARQUITECTURA FRENTE A LA IDENTIDAD CULTURA DE UN PUEBLO
LA ARQUITECTURA FRENTE A LA IDENTIDAD CULTURA DE UN PUEBLOLA ARQUITECTURA FRENTE A LA IDENTIDAD CULTURA DE UN PUEBLO
LA ARQUITECTURA FRENTE A LA IDENTIDAD CULTURA DE UN PUEBLO
John Lenin Parra Celi
 
RoswellResearchPoster2015-ver2smaller-1
RoswellResearchPoster2015-ver2smaller-1RoswellResearchPoster2015-ver2smaller-1
RoswellResearchPoster2015-ver2smaller-1
Korry Wirth
 
Control De Cambios (Scm)
Control De Cambios (Scm)Control De Cambios (Scm)
Control De Cambios (Scm)
UJAP
 
Persamaan-lingkaran
Persamaan-lingkaranPersamaan-lingkaran
Persamaan-lingkaran
DPrayogo
 

Viewers also liked (20)

Curso explosiones-incendios-neumaticos-camiones-mineros-procedimientos-emerge...
Curso explosiones-incendios-neumaticos-camiones-mineros-procedimientos-emerge...Curso explosiones-incendios-neumaticos-camiones-mineros-procedimientos-emerge...
Curso explosiones-incendios-neumaticos-camiones-mineros-procedimientos-emerge...
 
seguridad minera_1-introduccion
seguridad minera_1-introduccionseguridad minera_1-introduccion
seguridad minera_1-introduccion
 
GUIDELINES FOR MINE HAUL ROAD DESIGN - 2001
GUIDELINES FOR MINE HAUL ROAD DESIGN - 2001GUIDELINES FOR MINE HAUL ROAD DESIGN - 2001
GUIDELINES FOR MINE HAUL ROAD DESIGN - 2001
 
18 nchrp500 [v13] guía reducirchoquescamiones
18 nchrp500 [v13] guía reducirchoquescamiones18 nchrp500 [v13] guía reducirchoquescamiones
18 nchrp500 [v13] guía reducirchoquescamiones
 
Ortec plandag-2016
Ortec plandag-2016Ortec plandag-2016
Ortec plandag-2016
 
hrforum-2014-10 Moje agenda JR
hrforum-2014-10 Moje agenda JRhrforum-2014-10 Moje agenda JR
hrforum-2014-10 Moje agenda JR
 
Unit Six
Unit SixUnit Six
Unit Six
 
Everyone loves share point oslo
Everyone loves share point osloEveryone loves share point oslo
Everyone loves share point oslo
 
CV of Emad Goufi FEB 2016
CV of Emad Goufi FEB 2016CV of Emad Goufi FEB 2016
CV of Emad Goufi FEB 2016
 
Update Seminar
Update SeminarUpdate Seminar
Update Seminar
 
LA ARQUITECTURA FRENTE A LA IDENTIDAD CULTURA DE UN PUEBLO
LA ARQUITECTURA FRENTE A LA IDENTIDAD CULTURA DE UN PUEBLOLA ARQUITECTURA FRENTE A LA IDENTIDAD CULTURA DE UN PUEBLO
LA ARQUITECTURA FRENTE A LA IDENTIDAD CULTURA DE UN PUEBLO
 
RoswellResearchPoster2015-ver2smaller-1
RoswellResearchPoster2015-ver2smaller-1RoswellResearchPoster2015-ver2smaller-1
RoswellResearchPoster2015-ver2smaller-1
 
Control De Cambios (Scm)
Control De Cambios (Scm)Control De Cambios (Scm)
Control De Cambios (Scm)
 
Ecosystem Investing
Ecosystem InvestingEcosystem Investing
Ecosystem Investing
 
Persamaan-lingkaran
Persamaan-lingkaranPersamaan-lingkaran
Persamaan-lingkaran
 
Instrumentación del Laboratorio Clínico
Instrumentación del Laboratorio ClínicoInstrumentación del Laboratorio Clínico
Instrumentación del Laboratorio Clínico
 
Connect curate create (3)
Connect curate create (3)Connect curate create (3)
Connect curate create (3)
 
Kettle Chips: Case Study
Kettle Chips: Case StudyKettle Chips: Case Study
Kettle Chips: Case Study
 
Mobile Conversion Optimization for Context
Mobile Conversion Optimization for ContextMobile Conversion Optimization for Context
Mobile Conversion Optimization for Context
 
Supporting Social & Collaborative Learning in the Workplace
Supporting Social & Collaborative Learning in the WorkplaceSupporting Social & Collaborative Learning in the Workplace
Supporting Social & Collaborative Learning in the Workplace
 

Similar to SharePoint Saturday Stockholm 2016/05/21

Docker - Portable Deployment
Docker - Portable DeploymentDocker - Portable Deployment
Docker - Portable Deployment
javaonfly
 
Write Once and REALLY Run Anywhere | OpenStack Summit HK 2013
Write Once and REALLY Run Anywhere | OpenStack Summit HK 2013Write Once and REALLY Run Anywhere | OpenStack Summit HK 2013
Write Once and REALLY Run Anywhere | OpenStack Summit HK 2013
dotCloud
 
Docker intro
Docker introDocker intro
Docker intro
spiddy
 

Similar to SharePoint Saturday Stockholm 2016/05/21 (20)

SharePoint Saturday Barcelona 2016
SharePoint Saturday Barcelona 2016SharePoint Saturday Barcelona 2016
SharePoint Saturday Barcelona 2016
 
Session Slides from DEVintersection Europe
Session Slides from DEVintersection EuropeSession Slides from DEVintersection Europe
Session Slides from DEVintersection Europe
 
Morning Coffee - Windows Server 2016
Morning Coffee - Windows Server 2016Morning Coffee - Windows Server 2016
Morning Coffee - Windows Server 2016
 
A curtain-raiser to the container world Docker & Kubernetes
A curtain-raiser to the container world Docker & KubernetesA curtain-raiser to the container world Docker & Kubernetes
A curtain-raiser to the container world Docker & Kubernetes
 
Docker Introduction
Docker IntroductionDocker Introduction
Docker Introduction
 
Docker Introduction
Docker IntroductionDocker Introduction
Docker Introduction
 
Rami Sayar - Node microservices with Docker
Rami Sayar - Node microservices with DockerRami Sayar - Node microservices with Docker
Rami Sayar - Node microservices with Docker
 
Docker - Portable Deployment
Docker - Portable DeploymentDocker - Portable Deployment
Docker - Portable Deployment
 
Write Once and REALLY Run Anywhere | OpenStack Summit HK 2013
Write Once and REALLY Run Anywhere | OpenStack Summit HK 2013Write Once and REALLY Run Anywhere | OpenStack Summit HK 2013
Write Once and REALLY Run Anywhere | OpenStack Summit HK 2013
 
Docker and Microsoft - Windows Server 2016 Technical Deep Dive
Docker and Microsoft - Windows Server 2016 Technical Deep DiveDocker and Microsoft - Windows Server 2016 Technical Deep Dive
Docker and Microsoft - Windows Server 2016 Technical Deep Dive
 
Docker
DockerDocker
Docker
 
Building Efficient Parallel Testing Platforms with Docker
Building Efficient Parallel Testing Platforms with DockerBuilding Efficient Parallel Testing Platforms with Docker
Building Efficient Parallel Testing Platforms with Docker
 
Docker and-daily-devops
Docker and-daily-devopsDocker and-daily-devops
Docker and-daily-devops
 
Docker & Daily DevOps
Docker & Daily DevOpsDocker & Daily DevOps
Docker & Daily DevOps
 
Docker-Intro
Docker-IntroDocker-Intro
Docker-Intro
 
Introduction to Docker Container
Introduction to Docker ContainerIntroduction to Docker Container
Introduction to Docker Container
 
AWS re:Invent 2016: Development Workflow with Docker and Amazon ECS (CON302)
AWS re:Invent 2016: Development Workflow with Docker and Amazon ECS (CON302)AWS re:Invent 2016: Development Workflow with Docker and Amazon ECS (CON302)
AWS re:Invent 2016: Development Workflow with Docker and Amazon ECS (CON302)
 
OpenStack Summit
OpenStack SummitOpenStack Summit
OpenStack Summit
 
Azure ai on premises with docker
Azure ai on premises with  dockerAzure ai on premises with  docker
Azure ai on premises with docker
 
Docker intro
Docker introDocker intro
Docker intro
 

More from Rick Van Rousselt

More from Rick Van Rousselt (18)

My slides from SharePoint Saturday Warsaw 2019
My slides from SharePoint Saturday Warsaw 2019My slides from SharePoint Saturday Warsaw 2019
My slides from SharePoint Saturday Warsaw 2019
 
My slides from the North American Collaboration Summit on ACS
My slides from the North American Collaboration Summit on ACSMy slides from the North American Collaboration Summit on ACS
My slides from the North American Collaboration Summit on ACS
 
My slides from the European SharePoint & Office 365 Conference 2017
My slides from the European SharePoint & Office 365 Conference 2017My slides from the European SharePoint & Office 365 Conference 2017
My slides from the European SharePoint & Office 365 Conference 2017
 
My slides from SharePoint Saturday Oslo
My slides from SharePoint Saturday OsloMy slides from SharePoint Saturday Oslo
My slides from SharePoint Saturday Oslo
 
My slides from the Microsoft Inovation Center Brussels at DigitYser
My slides from the Microsoft Inovation Center Brussels at DigitYserMy slides from the Microsoft Inovation Center Brussels at DigitYser
My slides from the Microsoft Inovation Center Brussels at DigitYser
 
My Slides from SharePoint Saturday Helsinki
My Slides from SharePoint Saturday Helsinki My Slides from SharePoint Saturday Helsinki
My Slides from SharePoint Saturday Helsinki
 
My Session from SharePoint Saturday Cambridge
My Session from SharePoint Saturday CambridgeMy Session from SharePoint Saturday Cambridge
My Session from SharePoint Saturday Cambridge
 
My session from SharePoint Saturday Netherlands
My session from SharePoint Saturday NetherlandsMy session from SharePoint Saturday Netherlands
My session from SharePoint Saturday Netherlands
 
The slides from my session with Albert-Jan Schot at SharePoint Saturday Monaco
The slides from my session with Albert-Jan Schot at SharePoint Saturday MonacoThe slides from my session with Albert-Jan Schot at SharePoint Saturday Monaco
The slides from my session with Albert-Jan Schot at SharePoint Saturday Monaco
 
My Luis.ai session slides from Tuga IT 2017 Portugal
My Luis.ai session slides from Tuga IT 2017 PortugalMy Luis.ai session slides from Tuga IT 2017 Portugal
My Luis.ai session slides from Tuga IT 2017 Portugal
 
aOS Day Lille December 2016
aOS Day Lille December 2016aOS Day Lille December 2016
aOS Day Lille December 2016
 
aOS Day Brussels December 2016
aOS Day Brussels December 2016aOS Day Brussels December 2016
aOS Day Brussels December 2016
 
Session Slides from DEVintersection Europe
Session Slides from DEVintersection EuropeSession Slides from DEVintersection Europe
Session Slides from DEVintersection Europe
 
My slides from SharePoint Saturday Oslo
My slides from SharePoint Saturday OsloMy slides from SharePoint Saturday Oslo
My slides from SharePoint Saturday Oslo
 
Collab365 Global Summit Slides
Collab365 Global Summit SlidesCollab365 Global Summit Slides
Collab365 Global Summit Slides
 
SharePoint Saturday Belgium 2016
SharePoint Saturday Belgium 2016SharePoint Saturday Belgium 2016
SharePoint Saturday Belgium 2016
 
SPSNY 2016 slides
SPSNY 2016 slidesSPSNY 2016 slides
SPSNY 2016 slides
 
Spsbe14 spsbe19
Spsbe14 spsbe19Spsbe14 spsbe19
Spsbe14 spsbe19
 

Recently uploaded

Recently uploaded (20)

Facemoji Keyboard released its 2023 State of Emoji report, outlining the most...
Facemoji Keyboard released its 2023 State of Emoji report, outlining the most...Facemoji Keyboard released its 2023 State of Emoji report, outlining the most...
Facemoji Keyboard released its 2023 State of Emoji report, outlining the most...
 
GraphSummit Stockholm - Neo4j - Knowledge Graphs and Product Updates
GraphSummit Stockholm - Neo4j - Knowledge Graphs and Product UpdatesGraphSummit Stockholm - Neo4j - Knowledge Graphs and Product Updates
GraphSummit Stockholm - Neo4j - Knowledge Graphs and Product Updates
 
StrimziCon 2024 - Transition to Apache Kafka on Kubernetes with Strimzi.pdf
StrimziCon 2024 - Transition to Apache Kafka on Kubernetes with Strimzi.pdfStrimziCon 2024 - Transition to Apache Kafka on Kubernetes with Strimzi.pdf
StrimziCon 2024 - Transition to Apache Kafka on Kubernetes with Strimzi.pdf
 
Studiovity film pre-production and screenwriting software
Studiovity film pre-production and screenwriting softwareStudiovity film pre-production and screenwriting software
Studiovity film pre-production and screenwriting software
 
Tree in the Forest - Managing Details in BDD Scenarios (live2test 2024)
Tree in the Forest - Managing Details in BDD Scenarios (live2test 2024)Tree in the Forest - Managing Details in BDD Scenarios (live2test 2024)
Tree in the Forest - Managing Details in BDD Scenarios (live2test 2024)
 
Abortion ^Clinic ^%[+971588192166''] Abortion Pill Al Ain (?@?) Abortion Pill...
Abortion ^Clinic ^%[+971588192166''] Abortion Pill Al Ain (?@?) Abortion Pill...Abortion ^Clinic ^%[+971588192166''] Abortion Pill Al Ain (?@?) Abortion Pill...
Abortion ^Clinic ^%[+971588192166''] Abortion Pill Al Ain (?@?) Abortion Pill...
 
AI/ML Infra Meetup | Reducing Prefill for LLM Serving in RAG
AI/ML Infra Meetup | Reducing Prefill for LLM Serving in RAGAI/ML Infra Meetup | Reducing Prefill for LLM Serving in RAG
AI/ML Infra Meetup | Reducing Prefill for LLM Serving in RAG
 
5 Reasons Driving Warehouse Management Systems Demand
5 Reasons Driving Warehouse Management Systems Demand5 Reasons Driving Warehouse Management Systems Demand
5 Reasons Driving Warehouse Management Systems Demand
 
Workforce Efficiency with Employee Time Tracking Software.pdf
Workforce Efficiency with Employee Time Tracking Software.pdfWorkforce Efficiency with Employee Time Tracking Software.pdf
Workforce Efficiency with Employee Time Tracking Software.pdf
 
IT Software Development Resume, Vaibhav jha 2024
IT Software Development Resume, Vaibhav jha 2024IT Software Development Resume, Vaibhav jha 2024
IT Software Development Resume, Vaibhav jha 2024
 
COMPUTER AND ITS COMPONENTS PPT.by naitik sharma Class 9th A mittal internati...
COMPUTER AND ITS COMPONENTS PPT.by naitik sharma Class 9th A mittal internati...COMPUTER AND ITS COMPONENTS PPT.by naitik sharma Class 9th A mittal internati...
COMPUTER AND ITS COMPONENTS PPT.by naitik sharma Class 9th A mittal internati...
 
A Guideline to Gorgias to to Re:amaze Data Migration
A Guideline to Gorgias to to Re:amaze Data MigrationA Guideline to Gorgias to to Re:amaze Data Migration
A Guideline to Gorgias to to Re:amaze Data Migration
 
how-to-download-files-safely-from-the-internet.pdf
how-to-download-files-safely-from-the-internet.pdfhow-to-download-files-safely-from-the-internet.pdf
how-to-download-files-safely-from-the-internet.pdf
 
OpenChain @ LF Japan Executive Briefing - May 2024
OpenChain @ LF Japan Executive Briefing - May 2024OpenChain @ LF Japan Executive Briefing - May 2024
OpenChain @ LF Japan Executive Briefing - May 2024
 
Implementing KPIs and Right Metrics for Agile Delivery Teams.pdf
Implementing KPIs and Right Metrics for Agile Delivery Teams.pdfImplementing KPIs and Right Metrics for Agile Delivery Teams.pdf
Implementing KPIs and Right Metrics for Agile Delivery Teams.pdf
 
Top Mobile App Development Companies 2024
Top Mobile App Development Companies 2024Top Mobile App Development Companies 2024
Top Mobile App Development Companies 2024
 
How to install and activate eGrabber JobGrabber
How to install and activate eGrabber JobGrabberHow to install and activate eGrabber JobGrabber
How to install and activate eGrabber JobGrabber
 
What need to be mastered as AI-Powered Java Developers
What need to be mastered as AI-Powered Java DevelopersWhat need to be mastered as AI-Powered Java Developers
What need to be mastered as AI-Powered Java Developers
 
AI Hackathon.pptx
AI                        Hackathon.pptxAI                        Hackathon.pptx
AI Hackathon.pptx
 
Entropy, Software Quality, and Innovation (presented at Princeton Plasma Phys...
Entropy, Software Quality, and Innovation (presented at Princeton Plasma Phys...Entropy, Software Quality, and Innovation (presented at Princeton Plasma Phys...
Entropy, Software Quality, and Innovation (presented at Princeton Plasma Phys...
 

SharePoint Saturday Stockholm 2016/05/21

Editor's Notes

  1. My name is rick and i am an office 365 sharepoint consultant. I”m currently focussed on o365 and azure. If you want to contact me please reach out to me on twitter or just send me an email
  2. Now lets have a look at the agenda. First we will have a quick look at what are containers and how does docker relate to this Then we will go over some of the details why we should start using docker and containers After this we will start exploring the azure container service or ACS for short We will end this session with some examples how we can use containers in combination with office add-ins
  3. Let’s take a look at docker and containers Docker itself is lightweight open secure platform. Now this itself means not that much… but it simplifys building shipping and running apps. This means that moving between different environments like from dev to production is made easy. Docker does this by providing a shipping container for our code. The most used analogy when talking about docker containers is comparing them to shipping containers. Back in the old days hey had different sizes of cargo. Big and small crates of different sizes. It took forever to load the ship… now standard containers and ships get loaded really fast. Now let’s compare them to something we all know… virtual machines
  4. We will start at the bottom with the fysical infrastructure. By this i mean the actual hardware. The server, the cpu’s, the ram, the disk,… On top of this a host operating system will be installed. This operating system will also have some kind of hypervisor. This enables the virtualisation. I think we all know ESXI by vmware but there are lot’s of vendors on the market. Once these parts are installed we can start creating our virtual machines. They need an operating system. Because i”ve been focussed on sharepoint for quite some time now this is usually just windows server. Then on this operating system we will install our needed files. Our dll”s for our frameworks and such. This would be sharepoint then… and lastly we would install our app. Each os needs cpu, ram, licensing and maintenance
  5. Now lets look at this picture from a container standpoint. We still have our infrastructure and our operating system. But on this operating system we can now install the docker runtime. This will allow us run our containers. The containers wil share the files of the host operating system and if needed some of our framework files. This means that because a few layers our now out the picture we have more room for our apps. Aka we can run more apps on the same hardware. Also lesser maintenance is required because no care is needed for every operating system in every virtual machine and of course in a windows world this also means no extra licensing cost for every VM we spin up.
  6. Docker has a few major components… Docker engine or deamon or runtime… this is wat gets installed Docker images… these the blueprints of our containers And then finally we have our containers… now lets take a closer look at these components.
  7. Docker engine is responsible for running our containers… actually it does a lot more but for now lets just say it runs containers. This means that if we have the docker engine running on our laptop and we create a container… then we can run this container wherever we want… lets”s say in azure
  8. An image is a blueprint of a container. These are readonly and needed by the docker engine to spin up a container. They can consist out of multiple layers. Lets take for example we write a node js website. Then we have our code. Now for this code to run we need node installed and for node to be installed we need an operating system. So we create an image where are these layers are stacked on top op each other. A container can now be created from this image on our dev environment but also if needed in our production environment
  9. A container is a running instance of an image. This actually holds the app and runs it. It’s isolated and secured. This means that it cannot write to the host file system or other containers
  10. Why should we use containers. Wel first and foremost we can elimate app conficts. Lets say we have version 1 of our app build. It has its own dependencie on a framework that we use. Well then we can easily create a new container which has a dependency on a newer version of that framework or even a 3th version. All these containers run in there isolated environment so we have no issues running them next to each other. As before when this would be installed into a virtual machine when one app needed to upgrade a framework that it used then other apps also needed to upgrade because they would all share that framework.
  11. We all have been in this situation. We develop an application and it gets tested. But when it’s time to deploy it to production it’s not working. This can be because something was not installed or because something was not configured correctly. Because the containers are created from images they only need the docker runtime. All other dependencies are documented in the image. So when we create our container on other enivronments we should have no issues. Becuase the image gets rebuild and it gets the required files for us.
  12. Well as a conclusion we can just say it’s easier for us developers. You know the drill when joining an ongoing project. First you need to setup you’re development environment. This usally takes a lot of time. You get a clean virtual machine. Then you need to install you’re visual studio. Then all the frameworks.. Then you need to configure everthing so that you have at least a working version of you’re app. And after all this is done… it”s still not even close to how the production environment is set up and configured. And then the next day the previous project has a bug in it and you need to start up you’re old vm that you just removed from you’re laptop. So the process starts all over again. With containers we can simply pull the images start up the containers and start coding.
  13. Now what does this all mean for us SharePoint and O365 developers Well remember the good old days.. When we created farm solutions and when we had full control over everything. Well those days also had there drawbacks… Who didn’t have a server in production struggeling because we didn’t dispose properly of our SPWeb. Well a few years back microsoft said this can be no more and the app model was introduced. This entailed that we should now use csom and that our app. At least the provider hosted apps or office add-ins now don’t need to run on a sharepoint server. This set’s us in an excelent position to make the switch faster to containers. Especially for those who develop against office 365 because there we already need to bring our own hosting environments.
  14. What does this all translate to … that we can ship software faster. Which is always a good thing especially in this rapid evolving world of today
  15. The azure container service provides us an easy to use way into deploying and managing containers at a large scale. We can quickly set up a cluster of nodes in which containers can run. Normally if we want to set up a node cluster there is a lot of configuration and setup required. Now this all will be taken care of for us. What normally takes days to accomplish can now be set up in 15 min. We can easily scale our cluster environment thru existing azure parts such as virtual machine scale sets and vertical and horizontal scaling of virtual machines. The Azure team has made sure that they only implement open source tools such as docker swarm and DC/OS. This will ensure that you can not only turn to microsoft if you need help but that you can just ask the community. Or if you fix an error or you enhance the software that you can contribute it back to the team
  16. When creating an Azure container service we have choice. Will we use the DC/OS orchestrator or the native docker swarm. They both have there benifits and drawbacks. DC/OS is new to the party. It just got released a few weeks ago. First we could choose between mesos and docker swarm. Mesos has now been replaced with dc/os. But DC/OS is build on top of mesos. It’s designed to scale very large clusters involving hundreds or thousands of hosts and has a proven track record. But its a complex solution. On the other side you have docker swarm. Which is the native orchestrator that docker offers. This has the advantage that it runs almost the exact same commands as docker on my laptop. But this can also be a disadvantage. This means we need to know our way around the command line tool. And because it’s not been around that long it doesn’t have the trackrecord dat DC/OS has.
  17. Now… let”s be honest. I am a developer and so are most of you probabely…. I am not qualified to run a production environment node cluster with datacenter orchestrators… So why should i even care that something as the azure container service even exists… But that’s the beauty of ACS. If you manage, nurture and care for it then it can be used in a production environment. But we as developers sometimes just want to test stuff out.. How does our app behave when we scale it,.. Wat happens if we change this or that parameter. Wel ACS can provide us with this. We can easily spin up an environment ourselfs… start up our app or if we have them.. Multiple apps and start testing away… All of this without much configuration or even installing a single item.