SlideShare a Scribd company logo
Modernizing .NET Apps with Docker
Dockerizing Traditional .NET Apps
Elton Stoneman | Developer Advocate
@EltonStoneman | elton@docker.com
Today
• The Docker platform
• ASP.NET apps in Docker
• Modernizing apps with Docker
Tomorrow
• Microservices
• DevOps
• Cloud
• .NET Core
• Nano Server
• Linux
GET
GET
v1
GET
v2
GET
v3
GET
v4
Docker is a Platform
.NET Fx
ASP.NET
Web App
Server Core
IIS
> docker build
# escape=`
FROM microsoft/aspnet:windowsservercore
COPY MyApp-1.0.msi C:
RUN msiexec /i C:MyApp-1.0.msi /qn
# escape=`
FROM microsoft/windowsservercore
SHELL ["powershell", "-Command"]
RUN Add-WindowsFeature Web-server, `
NET-Framework-45-ASPNET, Web-Asp-Net45; `
Remove-Website -Name 'Default Web Site'
COPY ProductLaunchWeb /product-launch-web
RUN New-Website -Name 'product-launch' `
-PhysicalPath 'C:product-launch-web' -Port 80
EXPOSE 80
COPY bootstrap.ps1 /
ENTRYPOINT ./bootstrap.ps1
> docker push
hub.docker.com
#dddsw - Modernizing .NET Apps with Docker
> docker run
Dockerizing ASP.NET
GET
• Consistency
– Build & store
– Run & manage
• Foundation
– Fast, safe deployment
– Break up monoliths
v1
Modernizing Apps with Docker
Performance
Heavy usage
crashes app
Data Insight
Support ticket
for queries
UX
Full release
for UI change
Performance
Heavy usage
crashes app
Data Insight
Support ticket
for queries
UX
Full release
for UI change
Performance Feature Demo
GET
v2
GET
v2
Performance
Heavy usage
crashes app
Data Insight
Support ticket
for queries
Data Insight Feature Demo
GET
v3
GET
v3
Performance
Heavy usage
crashes app
Data Insight
Support ticket
for queries
UX
Full release
for UI change
UX Feature Demo
GET
v4
GET
v4
Performance
Heavy usage
crashes app
Data Insight
Support ticket
for queries
UX
Full release
for UI change
From
• ASP.NET WebForms app
• SQL Server database
To
• Event-driven architecture
• Self-service analytics
• Self-service content
With
• Agent-less builds
• Automated update (and rollback)
• Consistent dev & ops experience
Takeaways
• Docker is a mature platform
• Moving apps into Docker is easy
• Dockerizing is the first step
• Docker Labs
• Docker Captains
• DockerCon EU | October, Copenhagen
• @EltonStoneman
What Next?
THANK YOU

More Related Content

#dddsw - Modernizing .NET Apps with Docker

Editor's Notes

  1. Packaging Distributing Running Managing