Beheben Sie das Problem, dass das vom Docker bereitgestellte Verzeichnis nicht gelesen und geschrieben werden kann

Beheben Sie das Problem, dass das vom Docker bereitgestellte Verzeichnis nicht gelesen und geschrieben werden kann

Verwenden Sie den folgenden Befehl, um einen Container zu erstellen und das lokale Verzeichnis /home/dock/Downloads in /usr/Downloads im Container einzubinden:

[root@docker ~]# docker run -it -v /home/dock/Downloads:/usr/Downloads ubuntu /bin/bash

Nach dem Erstellen auf Centos treten die folgenden Probleme auf

root@637fe9ea94f0:/usr/Downloads# ls
ls: Verzeichnis „.“ kann nicht geöffnet werden: Berechtigung verweigert

Lösung:

Der Grund ist, dass das Sicherheitsmodul Selinux in CentOS7 die Berechtigungen deaktiviert hat.

Es gibt mehrere Möglichkeiten, das Problem fehlender Berechtigungen für das bereitgestellte Verzeichnis zu lösen:

1. Wenn Sie den Container ausführen, fügen Sie dem Container Berechtigungen hinzu und fügen Sie den Parameter --privileged=true hinzu:

docker run -i -t -v /soft:/soft --privileged=true 637fe9ea94f0 /bin/bash

2. Selinux vorübergehend ausschalten:

0

3. Fügen Sie Selinux-Regeln hinzu und ändern Sie den Sicherheitstext des zu mountenden Verzeichnisses

Ergänzung: Nachdem Docker den Ordner gemountet hat, ist er nicht mehr zugänglich und verfügt über keine Berechtigungen

Nach dem Aufrufen von Docker Run kann nicht mehr auf den bereitgestellten Ordner zugegriffen werden und es liegt keine Berechtigung vor

Zum Beispiel:

sudo nvidia-docker run -p 8090:8888 -p 8091:80 -p 8092:6666 --name=pytorch0.4 -v ~/Arbeitsbereich:/root/Arbeitsbereich -i --shm-size 31G -t dsksd/pytorch:0.4.1 /bin/bash

Der Arbeitsbereichsordner des Hosts wird mit dem Ordner /root/workspace des Containers gemountet, aber es können keine Daten in den Arbeitsbereichsordner auf dem Host geschrieben werden. Weil der Besitzer des Ordners zu diesem Zeitpunkt root ist.

Sie können den folgenden Befehl ausführen:

sudo chown -R $USER Ordnerspeicherort (/workspace)

Der Ordner ist lesbar und beschreibbar. Allerdings müssen Sie den obigen Befehl nach dem Neustart erneut ausführen.

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:
  • 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
  • Lösung für den Fehler beim Mounten des freigegebenen Docker-Verzeichnisses unter Windows 10

<<:  CSS3-Mobil-Vw+Rem-Methode zum Erreichen eines reaktionsfähigen Layouts ohne Abhängigkeit von JS

>>:  Verwenden Sie sauberes HTML-Markup zum Erstellen Ihrer Seiten

Artikel empfehlen

Tipps zur MySql-SQL-Optimierung teilen

Eines Tages stellte ich fest, dass die Ausführung...

So fragen Sie JSON in der Datenbank in MySQL 5.6 und darunter ab

Beim Speichern von Daten in MySQL werden manchmal...

MAC+PyCharm+Flask+Vue.js-Build-System

Inhaltsverzeichnis Konfigurieren Sie node.js+nvm+...

HTML-Tutorial: Sammlung häufig verwendeter HTML-Tags (5)

Verwandte Artikel: Anfänger lernen einige HTML-Ta...

js behandelt die Kontoabmeldung beim Schließen des Browsers

Inhaltsverzeichnis Klassischer Ansatz Frage Weite...

HTML-Beispielcode zur Implementierung des Tab-Wechsels

Tab-Umschalten ist auch eine gängige Technologie ...

So erhalten Sie den Maximal- oder Minimalwert einer Zeile in SQL

Originaldaten und Zieldaten SQL-Anweisungen imple...

Lösung für das Problem, dass MySQL Daten sehr langsam löscht und einfügt

Wenn ein Unternehmensentwickler eine Insert-Anwei...