29
ASP.NET in Docker, on Linux, in Azure [email protected] – twitter.com/markrendle – blog.rendle.io

ASP.NET Core in Docker on Linux in Azure

Embed Size (px)

Citation preview

Page 1: ASP.NET Core in Docker on Linux in Azure

ASP.NET in Docker,on Linux, in Azure

[email protected] – twitter.com/markrendle – blog.rendle.io

Page 2: ASP.NET Core in Docker on Linux in Azure

Caveat Observator

Page 3: ASP.NET Core in Docker on Linux in Azure
Page 4: ASP.NET Core in Docker on Linux in Azure

ASP.NET Core

In case you hadn’t heard…

Page 5: ASP.NET Core in Docker on Linux in Azure

ASP.NET Core history 1990s: “Classic” ASP

2000s: ASP.NET WebForms

2010s: ASP.NET MVC & WebAPI

2014: “Project K” 2015: ASP.NET 5 2016: ASP.NET Core, on .NET Core

Page 6: ASP.NET Core in Docker on Linux in Azure

.NET Core

CoreCLRCoreFX

SDK ASP.NET Core Apps

CoreRT

Page 7: ASP.NET Core in Docker on Linux in Azure

.NET Core is… Cross-Platform: Windows, Linux, MacOS Open Source: MIT licenses, on GitHub, accepting pull

requests Distributed as small, focused packages via NuGet

Including the CLR, the tools and the compiler

Page 8: ASP.NET Core in Docker on Linux in Azure

.NET Core is not… A huge runtime to install and maintain A desktop application framework Finished yet

Page 9: ASP.NET Core in Docker on Linux in Azure

.NET Core today ASP.NET Core: 1.0.0-rc2-final .NET Core:

Runtime: CoreCLR: 1.0.0-rc2 Core FX: 1.0.0-rc2

SDK: CLI: 1.0.0-rc2-preview1 VS Tools: 1.0.0-rc2-preview1

Page 10: ASP.NET Core in Docker on Linux in Azure

.NET Core “RTM” “End of June” Runtime will be 1.0 RTM SDKs will still be “Preview” More APIs to come

Page 11: ASP.NET Core in Docker on Linux in Azure

GET ON WITH IT

Page 12: ASP.NET Core in Docker on Linux in Azure

Editors

Page 13: ASP.NET Core in Docker on Linux in Azure

Docker

Page 14: ASP.NET Core in Docker on Linux in Azure

About Docker Linux Containers Like very, very small Virtual Machines

Run on host kernel Sandboxed Own file-system with Linux root

Different distros on same host

Page 15: ASP.NET Core in Docker on Linux in Azure

Docker Words Container (n):

A running process managed by the Docker Engine Image (n):

A file-system in a file; what a Container is run from Dockerfile (n):

The recipe to create an Image Registry (n):

A place to keep Images

Page 16: ASP.NET Core in Docker on Linux in Azure

Docker for Windows(BETA)

Page 17: ASP.NET Core in Docker on Linux in Azure

Docker for Windows Runs a Linux host on Hyper-V Docker command-line tools:

docker docker-compose

Not for running Windows Containers (yet)

Page 18: ASP.NET Core in Docker on Linux in Azure

Docker Tools for VS 2015(You’ll like this)

Page 19: ASP.NET Core in Docker on Linux in Azure

Linux in Azure

Page 20: ASP.NET Core in Docker on Linux in Azure

To Do List: Create Azure RM Resource Group Set up networking:

Subnet NIC IP address and DNS Open port 80 inbound

Create Storage Account and Container for VHD Create Ubuntu 16.04 VM Install Docker

Page 21: ASP.NET Core in Docker on Linux in Azure
Page 22: ASP.NET Core in Docker on Linux in Azure

Terraforming

Page 23: ASP.NET Core in Docker on Linux in Azure
Page 24: ASP.NET Core in Docker on Linux in Azure

To Do List:

terraform apply

Page 25: ASP.NET Core in Docker on Linux in Azure

Docker Registry

Page 26: ASP.NET Core in Docker on Linux in Azure

Steps to publish

$ docker login

$ docker tag my_image repository/name

$ docker push repository/name

Page 27: ASP.NET Core in Docker on Linux in Azure

Steps to deploy

$ docker pull repository/name

# -d runs "detached" like a service# -p binds the container port to the host port$ docker run –d –p 80:80 repository/name

Page 28: ASP.NET Core in Docker on Linux in Azure

Docker EcosystemSwarm:

Manage Docker host clusters

Docker Subscription:Mini-PaaS in public Cloud

Docker Trusted RegistryUniversal Control Plane

Azure Container Service

Page 29: ASP.NET Core in Docker on Linux in Azure

http://dot.net/

http://docker.com/

http://azure.microsoft.com/

http://terraform.io/

RED PILL?

[email protected] – twitter.com/markrendle – blog.rendle.io