I get:
PS C:\tmp> docker pull ubuntu
Using default tag: latest
latest: Pulling from library/ubuntu
no matching manifest for windows/amd64 in the manifest list entries
Now, before you say 'Duplicate!', 'make sure it's in experimental mode', like all the other answers to this question out there, I have.
I have followed the instructions on LinuxKit based LCOW images, and even read and followed the steps to manually create a hyper-v images from Run Linux containers on Windows.
I have downloaded the nightly build of Docker.
I am running in experimental mode:
PS C:\tmp> docker version
Client:
Version: master-dockerproject-2018-02-01
API version: 1.36
Go version: go1.9.3
Git commit: 26a2a459
Built: Thu Feb 1 23:50:28 2018
OS/Arch: windows/amd64
Experimental: false
Orchestrator: swarm
Server:
Engine:
Version: master-dockerproject-2018-02-01
API version: 1.36 (minimum version 1.24)
Go version: go1.9.3
Git commit: 53a58da
Built: Thu Feb 1 23:57:33 2018
OS/Arch: windows/amd64
Experimental: true
I have tried with the --platform
argument:
PS C:\tmp> docker run --platform linux ubuntu
Unable to find image 'ubuntu:latest' locally
C:\Program Files\Docker\docker.exe: Error response from daemon: invalid platform: invalid platform os "linux".
See 'C:\Program Files\Docker\docker.exe run --help'.
I seem to have some differences to the docker info
from my Windows 10 desktop machine, where everything is working:
Containers: 0
Running: 0
Paused: 0
Stopped: 0
Images: 0
Server Version: master-dockerproject-2018-02-01
Storage Driver: windowsfilter
Windows:
Logging Driver: json-file
Plugins:
Volume: local
Network: ics l2bridge l2tunnel nat null overlay transparent
Log: awslogs etwlogs fluentd gelf json-file logentries splunk syslog
Swarm: inactive
Default Isolation: process
# Windows 10 value:
# Kernel Version: 4.9.60-linuxkit-aufs
Kernel Version: 10.0 14393 (14393.2007.amd64fre.rs1_release.171231-1800)
# Windows 10 values:
# Operating System: Docker for Windows
# OSType: linux
Operating System: Windows Server 2016 Standard
OSType: windows
Architecture: x86_64
CPUs: 2
Total Memory: 3.997GiB
Name: Tests
ID: ...
Docker Root Dir: C:\lcow
Debug Mode (client): false
Debug Mode (server): true
File Descriptors: -1
Goroutines: 16
System Time: 2018-02-02T14:46:53.5608784+08:00
EventsListeners: 0
Registry: https://index.docker.io/v1/
Labels:
Experimental: true
Insecure Registries:
127.0.0.0/8
Live Restore Enabled: false
So the version on the Windows server is not configured to Linux containers.
How do I change that configuration to the correct one?
On Docker for windows you can conveniently right click on the icon in the task bar and pick Switch to Linux containers.
How can you do whatever it is that that does, on Windows Server?