J'ai récemment installé Docker Toolbox sur mon ordinateur Windows 10.
Cependant, chaque fois que j'exécute docker-compose up
, le message d'erreur suivant s'affiche:
Traceback (most recent call last):
File "<string>", line 3, in <module>
File "compose\cli\main.py", line 65, in main
File "compose\cli\main.py", line 117, in perform_command
File "compose\cli\main.py", line 849, in up
File "compose\project.py", line 372, in up
File "compose\project.py", line 539, in warn_for_swarm_mode
File "site-packages\docker\api\daemon.py", line 33, in info
File "site-packages\docker\utils\decorators.py", line 47, in inner
File "site-packages\docker\client.py", line 139, in _get
File "site-packages\requests\sessions.py", line 488, in get
File "site-packages\requests\sessions.py", line 475, in request
File "site-packages\requests\sessions.py", line 596, in send
File "site-packages\requests\adapters.py", line 423, in send
File "site-packages\requests\packages\urllib3\connectionpool.py", line 595, in urlopen
File "site-packages\requests\packages\urllib3\connectionpool.py", line 363, in _make_request
File "httplib.py", line 1057, in request
File "httplib.py", line 1097, in _send_request
File "httplib.py", line 1053, in endheaders
File "httplib.py", line 897, in _send_output
File "httplib.py", line 859, in send
File "site-packages\docker\transport\npipeconn.py", line 31, in connect
File "site-packages\docker\transport\npipesocket.py", line 22, in wrapped
File "site-packages\docker\transport\npipesocket.py", line 49, in connect
pywintypes.error: (2, 'WaitNamedPipe', 'The system cannot find the file specified.')
docker-compose returned -1
Notez que j'ai C:\Python27
et C:\Python27\Scripts
dans mes variables d'environnement user et system . J'ai aussi essayé d'utiliser Python 3 et cela ne fonctionne toujours pas.
Vous et moi pouvons ou non avoir le même problème. Dans le lien posté par @Haken Lid ci-dessus, le problème concerne la variable d'environnement PATH ne disposant pas de la version correcte de Python.
MAIS, pour moi, le problème était que je n'avais pas défini toutes mes variables d'environnement, en exécutant
eval $(docker-machine env <vmname>)
avant j'ai couru le docker-compose <any command>
.
J'ai juste oublié de démarrer "Docker pour Windows", ce qui a entraîné cette erreur.
Assurez-vous que Docker pour Windows est opérationnel dans la barre d'état système. C'était mon problème.
Vous pouvez définir les propriétés en tapant les commandes suivantes:
docker-machine env --Shell cmd default
@FOR /f "tokens=*" %i IN ('docker-machine env --Shell cmd default') DO @%i
J'ai passé près d'une heure à résoudre ce problème sur ma machine Windows.
Settings...
. Allez à Shared Drives
et sélectionnez C:
drive. Vous serez invité pour les informations d'identification. [*]docker build .
Exécutez docker-compose up
.
[*]: Si vous ne faites pas cette étape, vous risquez de rencontrer cette erreur lors de l'étape 6: ERROR: for website Cannot create container for service website: C: drive is not shared. Please share it in Docker for Windows Settings
. Si, après avoir entré vos informations d'identification, le lecteur C: n'est pas coché, créez un nouvel utilisateur pour votre ordinateur disposant d'un accès complet au dossier dans lequel vous exécuterez docker-compose up
.
J'ai eu ce problème avec une nouvelle installation de Docker sur Windows 10. Mon problème était que je n'avais pas réellement exécuté Docker au préalable; Je viens d'installer le fichier .msi et d'exécuter "docker-compose" à partir de la ligne de commande.
Une fois que j'ai exécuté Docker (et suivi quelques étapes postérieures à l'installation, notamment la déconnexion et le redémarrage de mon ordinateur), j'ai pu exécuter docker-compose
sans problème.
Quitter Docker et arrêter Docker VM a résolu le problème pour moi.
Dans Docker Quickstart Terminal, j'ai exécuté docker-machine env
et cela m'a donné:
export DOCKER_TLS_VERIFY="1"
export DOCKER_Host="tcp://192.168.99.100:2376"
export DOCKER_CERT_PATH="C:\Users\TheGeniesis\.docker\machine\machines\default"
export DOCKER_MACHINE_NAME="default"
export COMPOSE_CONVERT_WINDOWS_PATHS="true"
#### Run this command to configure your Shell:
eval $("C:\Program Files\Docker Toolbox\docker-machine.exe" env)
J'ai couru eval $("C:\Program Files\Docker Toolbox\docker-machine.exe" env)
. C'est tout!
Cette solution a été copiée à partir de ce problème . Je suis sur Windows 10 Home. Cela a résolu mon problème.
J'utilise Docker Toolbox depuis Windows 8.1. Après de nombreuses heures de dépannage, j'ai résolu ce problème en:
Je me suis heurté à ce problème après que le terminal Docker Quickstart se soit accroché pendant un moment sur "En attente d'une adresse IP ..." au démarrage.
Le redémarrage du terminal Docker Quickstart a tout corrigé.