Lösung für den Fehler beim Mounten des freigegebenen Docker-Verzeichnisses unter Windows 10

Lösung für den Fehler beim Mounten des freigegebenen Docker-Verzeichnisses unter Windows 10

Ursache

Beim Ausführen des Docker-Skripts tritt ein Fehler auf, dass der Container nicht erstellt werden kann.

Wie unten dargestellt:

Container für Dienst xxx kann nicht erstellt werden: b'Laufwerk wurde nicht freigegeben'

Ich ging zu Stack Overflow und fand heraus, dass die Lösung darin bestand, zu „Einstellungen“ -> „Freigegebene Laufwerke“ zu gehen und dann die Datenträgeradresse zu überprüfen, die ich für Docker zum Mounten des Images verwenden wollte.

Doch egal, was Sie prüfen (Anmeldeinformationen wiederherstellen, Übernehmen oder sogar Zurücksetzen), das Zurücksetzen auf Werkseinstellungen hilft nicht. Jedes Mal, wenn ich das Benutzerkennwort eingebe, löscht Docker automatisch meine Optionen.

Es gibt mehrere Gründe, die eine Analyse erfordern:

1. In der lokalen Sicherheitsrichtlinie unter Lokale Richtlinien->Sicherheitsoptionen->Netzwerkzugriff: Freigabe- und Sicherheitsmodell für lokale Konten geben die Sicherheitseinstellungen keine Berechtigungen frei und Sie müssen hier den klassischen Modus auswählen.

2. Handelt es sich um ein Firewall-Problem? Port 445 wird nicht für die Zuordnung verwendet.

3. Ist Hyper-V deaktiviert?

Das Hauptproblem besteht hier darin, dass das Laufwerk aufgrund der ersten Situation nicht freigegeben wurde. Gehen Sie nach der Einrichtung zu Einstellungen->Freigegebene Laufwerke->die Festplatte, die Sie mounten möchten, setzen Sie sie zurück und führen Sie sie aus.

Ergänzung: Bei Verwendung von run -v im Win10-Docker kann die virtuelle Maschine das vom Host gemountete Verzeichnis nicht anzeigen

Ich habe in diesen Tagen Docker gelernt. Das Problem, auf das ich heute gestoßen bin, ist folgendes:

docker run --name centos7 -it -v D:\docker-data\exchange\:/mnt centos:7

Wenn Sie mit der obigen Methode einen Container starten, können die Dateien unter D:\docker-data\exchange\ nicht in das Verzeichnis /mnt der virtuellen Maschine geladen werden. Als ich den Container jedoch startete, startete er normal, ohne dass Fehler gemeldet wurden. Es dauerte eine Weile. Aber gestern habe ich diese Methode verwendet und konnte normal mounten und die Dateien des Hostcomputers normal lesen.

Später stellte ich fest, dass ich gestern mein Computerpasswort geändert hatte und es erneut bestätigen musste, bevor ich es normal lesen konnte. (Ich weiß nicht, ob es eine Falle von Docker ist. Das zuvor verifizierte Passwort wurde geändert, aber die Ausführung des obigen Befehls erfordert keine erneute Authentifizierung und meldet keinen Fehler. Was für eine Falle.)

Verwenden Sie die folgende Methode, um zuerst die Überprüfung zu löschen: Öffnen Sie das Docker-Einstellungsfenster, klicken Sie auf der folgenden Seite auf „Anmeldeinformationen zurücksetzen“, überprüfen Sie dann die Festplatte, auf der sich das zu mountende Verzeichnis befindet, und geben Sie das Kennwort erneut ein (ich weiß nicht, warum das Kennwort hier erforderlich ist. Ich habe auf meinem Computer noch nie ein Kennwort festgelegt, aber ich habe eines speziell für die Verwendung von Docker festgelegt).

Anschließend können Sie das Verzeichnis erfolgreich in die virtuelle Maschine einbinden.

Das Obige ist meine persönliche Erfahrung. Ich hoffe, es kann Ihnen als Referenz dienen. Ich hoffe auch, dass Sie 123WORDPRESS.COM unterstützen werden. Sollten dennoch Fehler oder unvollständige Überlegungen vorliegen, freue ich mich über eine Korrektur.

Das könnte Sie auch interessieren:
  • Beheben Sie das Problem, dass das vom Docker bereitgestellte Verzeichnis nicht gelesen und geschrieben werden kann
  • Docker: Zeigen Sie den Mount-Verzeichnisvorgang des Containers an
  • Beheben Sie das Problem, dass beim Mounten von Dateien oder Verzeichnissen der relative Pfad ./ in Docker Run fehlschlägt
  • Implementierung der Einbindung eines freigegebenen NFS-Verzeichnisses in einen Docker-Container
  • Docker - Zusammenfassung von 3 Möglichkeiten zum Ändern von Container-Mount-Verzeichnissen
  • Docker mountet lokale Verzeichnisse und Datenvolumen-Container-Operationen
  • Docker startet das Elasticsearch-Image und behebt den Fehler nach dem Mounten des Verzeichnisses

<<:  Detaillierte Erklärung der MySQL-Gruppierung durch Optimierung

>>:  Lösung für das Problem, dass englische Buchstaben in Firefox nicht umbrochen werden

Artikel empfehlen

Tutorial zur Änderung des Root-Passworts in MySQL 5.6

1. Nach der Installation von MySQL 5.6 kann es ni...

Zehn Erfahrungen im Webdesign im Jahr 2008

<br />Das Internet verändert sich ständig un...

Beispiel für die Konfiguration von nginx zur Implementierung von SSL

Umgebungsbeschreibung Serversystem: Ubuntu 18.04 ...

IIS7~IIS8.5 Löschen oder Ändern des Serverprotokollheaders Server

Anforderungen: Entfernen Sie HTTP-Antwortheader i...

JavaScript-Canvas zum Erstellen eines Rubbellos-Beispiels

In diesem Artikel wird der spezifische Code von J...

Methoden für JavaScript-String-Objekte

Inhaltsverzeichnis Methoden des String-Objekts Me...

Beispielcode für CSS-Stacking und Z-Index

Kaskadierung und kaskadierende Ebenen HTML-Elemen...

Virtueller vsftpd-Benutzer basierend auf MySql-Authentifizierung

Inhaltsverzeichnis 1. MySQL-Installation 1.2 Tabe...