WINDOWS CONTAINERS
Introduction to
❤+ =
ASP.NET Application structure
Hardware
OS
.NET Platform
IIS
User Content
Disk SpaceCPU RAMHardware
IO/NetworkProcessesOS Permissions
CompilerFramework.NET Platform Runtime
App PoolSettingsIIS Website
Source CodeUser Content Dependencies
Disk SpaceCPU RAMHardware
Disk SpaceCPU RAMHardware
IO/NetworkProcessesOS Permissions
CompilerFramework.NET Platform Runtime
App PoolSettingsIIS Website
Source CodeUser Content Dependencies
IO/NetworkProcessesOS Permissions
Disk SpaceCPU RAMHardware
IO/NetworkProcessesOS Permissions
CompilerFramework.NET Platform Runtime
App PoolSettingsIIS Website
Source CodeUser Content Dependencies
CompilerFramework.NET Platform Runtime
Disk SpaceCPU RAMHardware
IO/NetworkProcessesOS Permissions
CompilerFramework.NET Platform Runtime
App PoolSettingsIIS Website
Source CodeUser Content Dependencies
App PoolSettingsIIS Website
Disk SpaceCPU RAMHardware
IO/NetworkProcessesOS Permissions
CompilerFramework.NET Platform Runtime
App PoolSettingsIIS Website
Source CodeUser Content Dependencies
Source CodeUser Content Dependencies
Disk SpaceCPU RAMHardware
IO/NetworkProcessesOS Permissions
CompilerFramework.NET Platform Runtime
App PoolSettingsIIS Website
Source CodeUser Content Dependencies
Disk SpaceCPU RAMHardware
IO/NetworkProcessesOS Permissions
CompilerFramework.NET Platform Runtime
App PoolSettingsIIS Website
Source CodeUser Content Dependencies
Provisioning
CI/CD
VM
Hardware
OS
.NET Platform
IIS
User Content
Provisioning
CI/CD
VM
VM
Provisioning
CI/CD
VM
Provisioning
CI/CD
VM
Provisioning
CI/CD
🔒
VM
Provisioning
CI/CD
🔒
Container
Container Benefits
Isolation
Resource control
Portability
Container Fundamentals
Host
Image
Dockerfile
Container
Client
Registry (Repository)
Compose
Client
Docker.exe
Container Fundamentals
Host
Image
Dockerfile
Container
Client
Registry (Repository)
Compose
Host
Physical Machine
Docker Service
Windows Containers
Virtual Machine
Docker Service
Windows Containers
Container Fundamentals
Host
Image
Dockerfile
Container
Client
Registry (Repository)
Compose
Image
OS
.NET Platform
IIS
User Content
8.0GB
0.4GB
0.7GB
0.2GB
microsoft/aspnet:4.6.0
Image
microsoft/windowsservercore:TP5OS
microsoft/iis:7.5
.NET Platform
IIS
lodgify/app:1.4.2User Content
8.0GB
0.4GB
0.7GB
0.2GB
microsoft/aspnet:4.6.2
Image
microsoft/windowsservercore:TP5OS
microsoft/iis:7.5
.NET Platform
IIS
lodgify/app:1.4.2User Content
8.0GB
0.4GB
0.7GB
0.2GB
microsoft/aspnet:4.6.2
Image
microsoft/windowsservercore:TP5OS
microsoft/iis:7.5
.NET Platform
IIS
User Content lodgify/app:1.4.3
8.0GB
0.4GB
0.7GB
0.2GB
Container Fundamentals
Host
Image
Dockerfile
Container
Client
Registry (Repository)
Compose
Dockerfile
FROM microsoft/windowsservercore
ADD ./scripts /scripts
WORKDIR c:scripts
ENV CREDENTIALS provision-key.json
RUN powershell ./install-packages.ps1
ENTRYPOINT ["ServiceMonitor.exe", “w3svc"]
Container Fundamentals
Host
Image
Dockerfile
Container
Client
Registry (Repository)
Compose
Container
Container 1
OS
.NET Platform
IIS
User Content
Container
Container 1
OS
.NET Platform
IIS
User Content
Container 2
OS
.NET Platform
IIS
User Content
Container
Container 1
OS
.NET Platform
IIS
User Content
Container 2
OS
.NET Platform
IIS
User Content
Container 3
OS
.NET Platform
IIS
User Content
Container Fundamentals
Host
Image
Dockerfile
Container
Client
Registry (Repository)
Compose
Registry (Repository)
Docker Hub
Internal Registry
Registry (Repository)
Docker Hub
Registry (Repository)
Compose
lodgify/app
MSSQL
lodgify/app lodgify/app
MSSQL
nginx
x3
x2
x1
Compose
services:
app:
image: lodgify/app
depends_on:
- "db"
ports:
- “80:80"
networks:
default:
external:
name: nat
Windows Containers
Windows Container Types
Windows Server Containers
Hyper-V Containers
Windows Server Containers
Windows Server Containers
Windows Kernel
Windows Server Containers
Windows Kernel
Host User Mode
Container Management
System Processes
Windows Server Containers
Windows Kernel
Host User Mode
Container Management
System Processes
Windows Server
Container
System
Processes
Application
Processes
Windows Server Containers
Windows Kernel
Host User Mode
Container Management
System Processes
Windows Server
Container
System
Processes
Application
Processes
Windows Server
Container
System
Processes
Application
Processes
Windows Server
Container
System
Processes
Application
Processes
Windows Server
Container
System
Processes
Application
Processes
Hyper-V Containers
Hyper-V Containers
🙈
Demo time!
Some links
Get 3x100$
Azure for testing
http://bit.ly/2enCJqehttp://bit.ly/2enCZ8F
How to deploy
Containers
http://bit.ly/2fEiG8O
Container
Internals
Questions?
http://dmitry.js.org
@dmitryzaets
dmitry-zaets

Introduction to Windows Containers