Я получаю:
PS C:\tmp> docker pull ubuntuUsing default tag: latestlatest: Pulling from library/ubuntuno matching manifest for windows/amd64 in the manifest list entries
Теперь, прежде чем вы скажете "Дублировать!", "убедитесь, что он находится в экспериментальном режиме", как и все другие ответы на этот вопрос, я иметь.
Я следовал инструкциям по Изображения LCOW на основе LinuxKit, и даже прочитал и выполнил шаги по ручному созданию образов hyper-v из Запуск контейнеров Linux в Windows.
Я загрузил ночную сборку Docker.
Я работаю в экспериментальном режиме:
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
Я пробовал с помощью --platform
аргумент:
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'.
Кажется, у меня есть некоторые отличия от docker info
с моего настольного компьютера с Windows 10, где все работает:
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
Таким образом, версия на сервере Windows не настроена для контейнеров Linux.
Как я могу менять эта конфигурация соответствует правильной?
В Docker для Windows вы можете удобно щелкнуть правой кнопкой мыши по значку на панели задач и выбрать Переключитесь на контейнеры Linux.
Как вы можете делать все, что это делает, на Windows Server?