As one of the .NET developers, traditionally we build and publish our code then host our web applications on IIS. Now, there's an alternative - Docker. What's Docker? You can find the answer at https://en.wikipedia.org/wiki/Docker_(software) This post is going to introduce how to use Docker to create an image of a .NET Core webapi project. And later on, we are going to push this image to Docker Hub. If you don't want to read the content but just want to find some source code sample you can go straight to get it here https://github.com/sskset/dockerize-dotnet-core . Prerequisites: .NET Core SDK - Code https://dotnet.microsoft.com/download Visual Studio Code or Visual Studio https://code.visualstudio.com/ Docker Desktop - Build a docker image https://www.docker.com/products/docker-desktop Docker Hub - Host the docker image https://hub.docker.com/ Create a .NET Core 2.2 webapi project Open it in Visual Studio Code Start it up