Docker - le système d'exploitation d'image «Windows» ne peut pas être utilisé sur cette plate-forme

90

J'ai essayé ceci sur ma machine Windows 10:

Dockerfile:

From microsoft/nanoserver
CMD ["echo", "Hello World"]

PS

C:\FSD\Docker\Trial1> docker build -t lea/leatest .
Sending build context to Docker daemon  2.048kB
Step 1/2 : FROM microsoft/nanoserver
latest: Pulling from microsoft/nanoserver
bce2fbc256ea: Pulling fs layer
58f68fa0ceda: Pulling fs layer
image operating system "windows" cannot be used on this platform
Léa A
la source
1
Il semble que votre environnement Docker est actuellement configuré pour utiliser des conteneurs Linux, pas des conteneurs Windows.
Dan Lowe
Quelle est la question?
Peter Mortensen

Réponses:

127

Votre hôte Docker est configuré pour exécuter des conteneurs Linux à l'intérieur d'une machine virtuelle. Pour exécuter des conteneurs Windows, vous devez "Basculer vers les conteneurs Windows" dans le menu Docker. La documentation à ce sujet est disponible ici .


Entrez la description de l'image ici

Entrez la description de l'image ici

BMitch
la source
1
Je suis complètement nouveau dans Docker, et pour tout le monde, vous devez également trouver l'icône Docker ** mini ** dans la barre d'outils, cliquez avec le bouton droit de la souris, puis sélectionnez "Basculer vers les conteneurs Windows" dans le menu Docker. N'oubliez pas que vous devez redémarrer votre poste de travail pour terminer le processus.
arame3333
1
Pour ce que ça vaut, je viens de passer aux conteneurs Windows et je n'ai pas besoin de redémarrer ou quoi que ce soit. (Docker version 17.12.0-ce, build c97c6d6)
mat007
Pouvez-vous exécuter des conteneurs Windows et Linux en même temps sur la même machine Windows 10?
styfle
@styfle Ce qui précède est une bascule, vous ne pouvez en faire qu'une à la fois. Il y a eu des travaux pour permettre la sélection de différents environnements d'exécution afin que vous puissiez utiliser les deux simultanément: blogs.msdn.microsoft.com/premier_developer/2018/04/20/…
BMitch
1
J'ai installé le menu fixe sur Windows en utilisant Docker toolbox, je ne vois pas l'icône du menu fixe dans la barre d'état système. Comment puis-je le faire?
paul
27

Vous devez aller dans la barre des tâches → cliquez avec le bouton droit sur l' icône Docker → utilisez l'option Basculer vers les conteneurs Windows ...

Source https://docs.docker.com/docker-for-windows/

Entrez la description de l'image ici

Pbaranski
la source
J'ai installé le menu fixe sur Windows en utilisant Docker toolbox, je ne vois pas l'icône du menu fixe dans la barre d'état système. Comment puis-je le faire?
paul
@paul J'ai peur que cette solution soit pour Docker pour Windows et non pour la boîte à outils. Juste pour ajouter Docker pour Windows est un logiciel recommandé sur Toolbox concernant l'interface (comme l'option de conteneurs Windows mentionnée)
pbaranski
Docker for Windowsest préféré à Docker Toolbox? Pourquoi ça?
paul
@paul Relation juste sur la réponse du personnel de docker ici: forums.docker.com/t/docker-for-windows-or-docker-toolbox/30387 , pour contradiction, j'ajouterai cette ressource: medium.com/short-stories-on- logiciel /… vous devez donc décider en fonction de votre jugement: D
pbaranski
5

microsoft/nanoserverest une image de conteneur native Windows. Vous ne pouvez donc pas l'exécuter car les conteneurs Linux s'exécutent de manière native. Il ne peut être exécuté que sur Windows 10 ou Windows Server.

Si vous êtes dans Windows 10, vous pouvez passer aux conteneurs Windows en sélectionnant

passer aux conteneurs Windows

prisonnier
la source
2

Basculer vers Windows Le conteneur doit être sélectionné à partir de l'icône du docker s'exécutant sous l'icône cachée en bas à droite ... Au moment où vous passez de Linux à Windows ou de Windows à Linux , le Dockerdémon redémarre automatiquement pour prendre en compte le changement de conteneur ...


Je vous recommande vivement de consulter ces 2 liens pour obtenir plus d'informations sur la création de conteneurs de fenêtre:


J'ai vraiment trouvé le contenu de ces liens très utile pour créer un conteneur de fenêtre qui est toujours en cours d'amélioration pour le problème générique auquel nous sommes tous confrontés, car le support du conteneur de fenêtre n'est pas encore mature comme les conteneurs Linux!

Abhishek Jain
la source