the velvet revolution: modernizing traditional asp.net apps with docker

37
The Velvet Revolution Dockerizing Traditional .NET Apps Elton Stoneman | Developer Advocate @EltonStoneman | [email protected]

Upload: elton-stoneman

Post on 22-Jan-2017

150 views

Category:

Software


0 download

TRANSCRIPT

Page 1: The Velvet Revolution: Modernizing Traditional ASP.NET Apps with Docker

The Velvet RevolutionDockerizing Traditional .NET Apps

Elton Stoneman | Developer Advocate@EltonStoneman | [email protected]

Page 2: The Velvet Revolution: Modernizing Traditional ASP.NET Apps with Docker

Today

• The Docker platform

• ASP.NET apps in Docker

• Modernizing apps with Docker

Page 3: The Velvet Revolution: Modernizing Traditional ASP.NET Apps with Docker

Not Today

• Microservices

• DevOps

• Cloud

• .NET Core

• Nano Server

• Linux

Page 4: The Velvet Revolution: Modernizing Traditional ASP.NET Apps with Docker

GET

v1

Page 5: The Velvet Revolution: Modernizing Traditional ASP.NET Apps with Docker

GET

v2

Page 6: The Velvet Revolution: Modernizing Traditional ASP.NET Apps with Docker

GET

v3

Page 7: The Velvet Revolution: Modernizing Traditional ASP.NET Apps with Docker

GET

v4

Page 8: The Velvet Revolution: Modernizing Traditional ASP.NET Apps with Docker

GET

v5

Page 9: The Velvet Revolution: Modernizing Traditional ASP.NET Apps with Docker

Docker is a Platform

Page 10: The Velvet Revolution: Modernizing Traditional ASP.NET Apps with Docker

.NET Fx

ASP.NET

Web App

Server Core

IIS

> docker build

Page 11: The Velvet Revolution: Modernizing Traditional ASP.NET Apps with Docker

# escape=`FROM microsoft/windowsservercoreSHELL ["powershell", "-Command"]

RUN Add-WindowsFeature Web-server, ` NET-Framework-45-ASPNET, Web-Asp-Net45; ` Remove-Website -Name 'Default Web Site' COPY ProductLaunchWeb /product-launch-webRUN New-Website -Name 'product-launch' ` -PhysicalPath 'C:\product-launch-web' -Port 80

EXPOSE 80

COPY bootstrap.ps1 /ENTRYPOINT ./bootstrap.ps1

Page 12: The Velvet Revolution: Modernizing Traditional ASP.NET Apps with Docker

> docker push

hub.docker.com

Page 13: The Velvet Revolution: Modernizing Traditional ASP.NET Apps with Docker
Page 14: The Velvet Revolution: Modernizing Traditional ASP.NET Apps with Docker

> docker run

Page 15: The Velvet Revolution: Modernizing Traditional ASP.NET Apps with Docker

Dockerizing ASP.NET

Page 16: The Velvet Revolution: Modernizing Traditional ASP.NET Apps with Docker

GET

• Consistency

– Build & store

– Run & manage

• Foundation

– Fast, safe deployment

– Break up monoliths

v2

Page 17: The Velvet Revolution: Modernizing Traditional ASP.NET Apps with Docker

Modernizing Apps with Docker

Page 18: The Velvet Revolution: Modernizing Traditional ASP.NET Apps with Docker

PerformanceHeavy usage crashes app

Data InsightSupport ticket for queries

UXFull release for UI change

Page 19: The Velvet Revolution: Modernizing Traditional ASP.NET Apps with Docker

PerformanceHeavy usage crashes app

Data InsightSupport ticket for queries

UXFull release for UI change

Page 20: The Velvet Revolution: Modernizing Traditional ASP.NET Apps with Docker

Performance Feature Demo

Page 21: The Velvet Revolution: Modernizing Traditional ASP.NET Apps with Docker

GET

v3

Page 22: The Velvet Revolution: Modernizing Traditional ASP.NET Apps with Docker

GET

v3

Page 23: The Velvet Revolution: Modernizing Traditional ASP.NET Apps with Docker

PerformanceHeavy usage crashes app

Data InsightSupport ticket for queries

Page 24: The Velvet Revolution: Modernizing Traditional ASP.NET Apps with Docker

Data Insight Feature Demo

Page 25: The Velvet Revolution: Modernizing Traditional ASP.NET Apps with Docker

GET

v4

Page 26: The Velvet Revolution: Modernizing Traditional ASP.NET Apps with Docker

GET

v4

Page 27: The Velvet Revolution: Modernizing Traditional ASP.NET Apps with Docker

PerformanceHeavy usage crashes app

Data InsightSupport ticket for queries

UXFull release for UI change

Page 28: The Velvet Revolution: Modernizing Traditional ASP.NET Apps with Docker

UX Feature Demo

Page 29: The Velvet Revolution: Modernizing Traditional ASP.NET Apps with Docker

GET

v5

Page 30: The Velvet Revolution: Modernizing Traditional ASP.NET Apps with Docker

GET

v5

Page 31: The Velvet Revolution: Modernizing Traditional ASP.NET Apps with Docker

PerformanceHeavy usage crashes app

Data InsightSupport ticket for queries

UXFull release for UI change

Page 32: The Velvet Revolution: Modernizing Traditional ASP.NET Apps with Docker

From

• ASP.NET WebForms app

• SQL Server database

Page 33: The Velvet Revolution: Modernizing Traditional ASP.NET Apps with Docker

To

• Event-driven architecture

• Self-service analytics

• Self-service content

Page 34: The Velvet Revolution: Modernizing Traditional ASP.NET Apps with Docker

Takeaways

• Docker is a mature platform

• Moving apps into Docker is easy

• Dockerizing enables modernizing

Page 35: The Velvet Revolution: Modernizing Traditional ASP.NET Apps with Docker
Page 36: The Velvet Revolution: Modernizing Traditional ASP.NET Apps with Docker

• Docker Labs • Docker Captains• DockerCon • @EltonStoneman

What Next?

Page 37: The Velvet Revolution: Modernizing Traditional ASP.NET Apps with Docker

THANK YOU