Post on 16-Apr-2017
WINDOWS CONTAINERSIntroduction 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
HostImage
DockerfileContainer
Client
Registry (Repository)Compose
Client
Docker.exe
Container Fundamentals
HostImage
DockerfileContainer
Client
Registry (Repository)Compose
Host
Physical Machine
Docker ServiceWindows Containers
Virtual Machine
Docker ServiceWindows Containers
Container Fundamentals
HostImage
DockerfileContainer
Client
Registry (Repository)Compose
Image
OS
.NET PlatformIIS
User Content
8.0GB0.4GB
0.7GB
0.2GB
microsoft/aspnet:4.6.0
Image
microsoft/windowsservercore:TP5OS
microsoft/iis:7.5.NET Platform
IISlodgify/app:1.4.2User Content
8.0GB0.4GB
0.7GB
0.2GB
microsoft/aspnet:4.6.2
Image
microsoft/windowsservercore:TP5OS
microsoft/iis:7.5.NET Platform
IISlodgify/app:1.4.2User Content
8.0GB0.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.0GB0.4GB
0.7GB
0.2GB
Container Fundamentals
HostImage
DockerfileContainer
Client
Registry (Repository)Compose
DockerfileFROM microsoft/windowsservercore
ADD ./scripts /scripts WORKDIR c:\\scripts
ENV CREDENTIALS provision-key.json
RUN powershell ./install-packages.ps1
ENTRYPOINT ["ServiceMonitor.exe", “w3svc"]
Container Fundamentals
HostImage
DockerfileContainer
Client
Registry (Repository)Compose
Container
Container 1OS
.NET Platform
IISUser Content
Container
Container 1OS
.NET Platform
IISUser Content
Container 2OS
.NET Platform
IISUser Content
Container
Container 1OS
.NET Platform
IISUser Content
Container 2OS
.NET Platform
IISUser Content
Container 3OS
.NET Platform
IISUser Content
Container Fundamentals
HostImage
DockerfileContainer
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
Composeservices: 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
@dmitryzaetsdmitry-zaets