Ich bin ein Docker-Neuling, daher bin ich mir meiner Antwort nicht so sicher, aber ich hatte das gleiche Problem, das Sie beschrieben haben, und hier ist, wie ich es gelöst habe ...
Als erstes gehe ich davon aus, dass Sie eine Docking-Maschine haben, wie zum Beispiel:
C:\Program Files\Docker Toolbox>docker-machine ls
NAME ACTIVE DRIVER STATE URL SWARM DOCKER ERRORS
docker - hyperv Running tcp://192.168.0.22:2376 v1.9.1
Es hat eine Weile gedauert, bis ich so weit gekommen bin, da ich Hyper-V als Host für meinen Docker-Computer verwende. Sobald Sie hier sind, können Sie jedoch docker-machine
Ihre Konfigurationseinstellungen abrufen:
C:\Program Files\Docker Toolbox>docker-machine config docker
--tlsverify
--tlscacert="C:\\Users\\Ken\\.docker\\machine\\certs\\ca.pem"
--tlscert="C:\\Users\\Ken\\.docker\\machine\\certs\\cert.pem"
--tlskey="C:\\Users\\Ken\\.docker\\machine\\certs\\key.pem"
-H=tcp://192.168.0.22:2376
Um diese Parameter beizubehalten (damit Sie sie nicht bei jedem Aufruf von weitergeben müssen docker.exe
), können Sie die folgenden Umgebungsvariablen erstellen (klicken Sie hier, um Einzelheiten zu den verfügbaren Variablen anzuzeigen):
set DOCKER_HOST=tcp://192.168.0.22:2376
set DOCKER_TLS_VERIFY=true
set DOCKER_CERT_PATH=C:\Users\Ken\.docker\machine\certs
Ich habe das alles noch nicht geschrieben, aber ich denke, ich werde eine Alternative zu start.sh erstellen, die mit Docker Toolbox geliefert wird, da sich diese IP-Adresse wahrscheinlich jedes Mal ändert, wenn Sie die virtuelle Maschine starten, die Docker hostet. HINWEIS: docker-machine
haben Sie auch hier behandelt! Nachdem Sie Ihren Docker-Computer gestartet haben, können Sie den docker-machine env <machine>
Befehl verwenden, um diese Umgebungsvariablen automatisch festzulegen!
Deshalb habe ich das folgende Bash-Skript erstellt, um das Skript start.sh zu ersetzen:
docker-machine start docker
eval "$(docker-machine.exe env docker)"
Natürlich müssen Sie meine Angaben gegen Ihre austauschen, aber ich hoffe, das ist hilfreich. Ich weiß, dass ich eine schreckliche Zeit damit verbracht habe, Dokumentation darüber zu finden, wie man dieses Zeug unter Windows 10 zum Laufen bringt.