'How to run linux docker image in windows server 2016?

I have installed docker in windows server 2016 using microsoft documention.

I need to create a docker image using docker file. Tried with the sample dockerfile and i am facing the error.

  • why linux container not supporting in the docker windows 2016 server. Do i need to install any additional step for linux container?

This is my docker file:

FROM node:10.15.3  
CMD ["echo", "Welcome"]

The error I am facing:

C:\Users\Administrator\Desktop>docker build .
Sending build context to Docker daemon   2.56kB
Step 1/2 : FROM node:10.15.3
10.15.3: Pulling from library/node
no matching manifest for windows/amd64 10.0.14393 in the manifest list entries

Docker version:

C:\Users\Administrator>docker version
Client: Mirantis Container Runtime
 Version:           20.10.9
 API version:       1.41
 Go version:        go1.16.12m2
 Git commit:        591094d
 Built:             12/21/2021 21:34:30
 OS/Arch:           windows/amd64
 Context:           default
 Experimental:      true

Server: Mirantis Container Runtime
 Engine:
  Version:          20.10.9
  API version:      1.41 (minimum version 1.24)
  Go version:       go1.16.12m2
  Git commit:       9b96ce992b
  Built:            12/21/2021 21:33:06
  OS/Arch:          windows/amd64
  Experimental:     false

Docker Info:

C:\Users\Administrator\Desktop>docker info
Client:
 Context:    default
 Debug Mode: false
 Plugins:
  app: Docker App (Docker Inc., v0.9.1-beta3)
  cluster: Manage Mirantis Container Cloud clusters (Mirantis Inc., v1.9.0)
  registry: Manage Docker registries (Docker Inc., 0.1.0)

Server:
 Containers: 0
  Running: 0
  Paused: 0
  Stopped: 0
 Images: 1
 Server Version: 20.10.9
 Storage Driver: windowsfilter
  Windows:
 Logging Driver: json-file
 Plugins:
  Volume: local
  Network: ics internal l2bridge l2tunnel nat null overlay private transparent
  Log: awslogs etwlogs fluentd gcplogs gelf json-file local logentries splunk syslog
 Swarm: inactive
 Default Isolation: process
 Kernel Version: 10.0 14393 (14393.4046.amd64fre.rs1_release.201028-1803)
 Operating System: Windows Server 2016 Datacenter Version 1607 (OS Build 14393.4046)
 OSType: windows
 Architecture: x86_64
 CPUs: 2
 Total Memory: 16GiB
 Docker Root Dir: C:\ProgramData\docker
 Debug Mode: false
 Registry: https://index.docker.io/v1/
 Labels:
 Experimental: false
 Insecure Registries:
  127.0.0.0/8
 Live Restore Enabled: false


Solution 1:[1]

I have checked your windows server version. you are using windows server 2016 (1607 version). since you are using the 1607 version you cant use WSL, Hyper-V, LinuxKit, Docker Desktop to run the Linux container image i.e (node, alpine, Nginx, etc..)

Please refer this StackOverflow question. you will find the solution.

Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source
Solution 1 Ojer_Dev