Docker Community Forums

Share and learn in the Docker community.

What OS is running in the container?


#1

Hi Folks,

I am new the forum however have a little experience with docker running on Linux.

My question to the community is:
If I am running docker on Windows 2016 and I have the following in my dockerfile what OS is running in the container.

Here is the pertain part of the dockerfile

escape=`

FROM microsoft/dotnet:2.1-aspnetcore-runtime
SHELL [“powershell”, “-Command”, “$ErrorActionPreference = ‘Stop’; $ProgressPreference = ‘SilentlyContinue’;”]
.
.

To me the container is running debian but other I am working with say it is running Windows nano.

Here is my logic:

From : microsoft/dotnet:2.1-aspnetcore-runtime

->From 2.2-runtime-deps-stretch-slim 

  ->From : debian:stretch-slim

(Metin Y.) #2

Official images for .NET Core and ASP.NET Core for Linux and Windows Nano Server
The base image microsoft/dotnet:2.1-aspnetcore-runtime bases on Debian Stretch.

In the tags section " Windows Server, version 1809 amd64 tags" you will find tags based on Windows Nano Server. Their name contains the string nanoserver, e.g. 2.2.1-aspnetcore-runtime-nanoserver-1809.

The tag dotnet:2.1-aspnetcore-runtime is based on Debian Stretch…


(Bryce Ryan) #3

You can find the specifics about the container image, and the available tags, at the repository on the Docker Hub. See, for example, https://hub.docker.com/r/microsoft/dotnet


#4

The confusion is 2.2-aspnetcore-runtime tagged in Linux and Windows Server.

Windows Server, version 1809 amd64 tags

2.2.103-sdk-nanoserver-1809 , 2.2-sdk-nanoserver-1809 , 2.2.103-sdk , 2.2-sdk , sdk , latest

2.2.1-aspnetcore-runtime-nanoserver-1809 , 2.2-aspnetcore-runtime-nanoserver-1809 , 2.2.1-aspnetcore-runtime , 2.2-aspnetcore-runtime , aspnetcore-runtime


(Bryce Ryan) #5

Later on that same page, we see

Image variants
The microsoft/dotnet images come in different flavors, each designed for a specific use case.

microsoft/dotnet:-sdk
This is the defacto image. If you are unsure about what your needs are, you probably want to use this one. It is designed to be used both as a throw away container (mount your source code and start the container to start your app), as well as the base to build other images off of.

It contains the .NET Core SDK which is comprised of three parts:

.NET Core CLI
.NET Core
ASP.NET Core
Use this image for your development process (developing, building and testing applications).

microsoft/dotnet:-aspnetcore-runtime
This image contains the ASP.NET Core and .NET Core runtimes and libraries and is optimized for running ASP.NET Core apps in production.

microsoft/dotnet:-runtime
This image contains the .NET Core runtimes and libraries and is optimized for running .NET Core apps in production.

microsoft/dotnet:-runtime-deps
This image contains the native dependencies needed by .NET Core. It does not include .NET Core. It is for self-contained applications.

And just after that, we see
If you have any problems with or questions about this image, please contact us through a [GitHub issue](https://github.com/dotnet/dotnet-docker/issues).

So, if your concerns aren’t addressed via the information on the repository’s information page, you could follow the link to the GitHub repository’s issues.