Eu recebo:
PS C:\tmp> docker pull ubuntuUsing default tag: latestlatest: Pulling from library/ubuntuno matching manifest for windows/amd64 in the manifest list entries
Agora, antes de dizer 'duplicar!', 'certifique - se de que está no modo experimental', como todas as outras respostas a esta pergunta por aí, eu ter.
Eu segui as instruções sobre Imagens lcow baseadas em LinuxKit, e até mesmo ler e seguir os passos para criar manualmente um hyper-V imagens a partir de Execute contêineres Linux no Windows.
Eu baixei a compilação noturna do Docker.
Estou executando no modo experimental:
PS C:\tmp> docker versionClient: 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: swarmServer: 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
Eu tentei com o --platform
argumento:
PS C:\tmp> docker run --platform linux ubuntuUnable to find image 'ubuntu:latest' locallyC:\Program Files\Docker\docker.exe: Error response from daemon: invalid platform: invalid platform os "linux".See 'C:\Program Files\Docker\docker.exe run --help'.
Parece que tenho algumas diferenças em relação ao docker info
da minha máquina de desktop Windows 10, onde tudo está funcionando:
Containers: 0 Running: 0 Paused: 0 Stopped: 0Images: 0Server Version: master-dockerproject-2018-02-01Storage Driver: windowsfilter Windows:Logging Driver: json-filePlugins: Volume: local Network: ics l2bridge l2tunnel nat null overlay transparent Log: awslogs etwlogs fluentd gelf json-file logentries splunk syslogSwarm: inactiveDefault Isolation: process# Windows 10 value:# Kernel Version: 4.9.60-linuxkit-aufsKernel Version: 10.0 14393 (14393.2007.amd64fre.rs1_release.171231-1800)# Windows 10 values:# Operating System: Docker for Windows# OSType: linuxOperating System: Windows Server 2016 StandardOSType: windowsArchitecture: x86_64CPUs: 2Total Memory: 3.997GiBName: TestsID: ...Docker Root Dir: C:\lcowDebug Mode (client): falseDebug Mode (server): true File Descriptors: -1 Goroutines: 16 System Time: 2018-02-02T14:46:53.5608784+08:00 EventsListeners: 0Registry: https://index.docker.io/v1/Labels:Experimental: trueInsecure Registries: 127.0.0.0/8Live Restore Enabled: false
Portanto, a versão no servidor Windows não está configurada para contêineres Linux.
Como faço para alterar essa configuração para o correto?
No Docker para windows, você pode clicar com o botão direito do mouse no ícone na barra de tarefas e escolher Mudar para contêineres Linux.
Como você pode fazer o que quer que seja, no Windows Server?