Heim >Betrieb und Instandhaltung >Docker >Benötigen Sie Root-Berechtigungen, um Docker zu verwenden?

Benötigen Sie Root-Berechtigungen, um Docker zu verwenden?

WBOY
WBOYOriginal
2022-06-27 10:33:458332Durchsuche

Für die Verwendung von Docker sind Root-Berechtigungen erforderlich. Wenn Sie keine Root-Berechtigungen haben, können Sie sudo verwenden, um Administratorberechtigungen zu erhalten, Docker-Befehle auszuführen oder den aktuellen Benutzer zum Docker hinzuzufügen Benutzergruppe, dann aktuell Der Benutzer hat die Berechtigung, auf den „Unix-Socket“ zuzugreifen und kann dann Docker-bezogene Befehle ausführen.

Benötigen Sie Root-Berechtigungen, um Docker zu verwenden?

Die Betriebsumgebung dieses Tutorials: Linux7.3-System, Docker-Version 19.03, Dell G3-Computer.

Benötigen Sie Root-Berechtigungen, um Docker zu verwenden?

Sie benötigen Root-Berechtigungen, um Docker auszuführen.

Um das Problem zu lösen, dass Nicht-Root-Benutzer keine Berechtigung zum Ausführen von Docker-Befehlen haben, lautet die Methode wie folgt:

Methode 1:

Verwenden Sie sudo, um Administratorrechte zu erhalten und Docker-Befehle auszuführen Wird häufig beim Ausführen von Docker-Befehlen über Skripte verwendet. Einschränkungen

Methode 2:

Wenn der Docker-Daemon gestartet wird, erhält die Benutzergruppe namens Docker standardmäßig die Berechtigung zum Lesen und Schreiben von Unix-Sockets. Erstellen Sie also einfach den Docker Benutzergruppe und fügen Sie den aktuellen Benutzer zur Docker-Benutzergruppe hinzu. Anschließend hat der aktuelle Benutzer die Berechtigung, auf den Unix-Socket zuzugreifen, und kann dann Docker-bezogene Befehle ausführen. Das heißt, der Benutzer, der den Docker-Daemon ausführt, ist immer noch Root. Wir müssen die folgenden Korrekturen vornehmen:


Das heißt, wir müssen Docker unter einem Nicht-Root-Benutzer installieren und den Docker-Daemon starten. Dieser Installations- und Betriebsmodus wird als „RootLess“-Modus bezeichnet. Kann installiert werden, es gibt jedoch Voraussetzungen: Der „RootLess“-Modus wurde als experimentelle Funktion in Docker Engine v19.03 eingeführt und ist ab Docker Engine v20.10 offiziell verfügbar.

Voraussetzungen

Sie müssen die Shadow-Utils der Tools newuidmap und newgidmap installieren. Das heißt, die Konfiguration von /etc/subuid und /etc/subuid oben erfordert die Unterstützung dieser beiden Tools. Bestätigen Sie vor der Installation mit „Yum List Installed Shadow-Utils“, ob es installiert wurde oder mit dem Betriebssystem geliefert wird. Wenn es vorhanden ist, installieren Sie es nicht, aber die Konfiguration im dritten Schritt ist erforderlich. Benötigen Sie Root-Berechtigungen, um Docker zu verwenden?

Schritt eins: Fügen Sie eine Softwarepaket-Installationsquelle hinzu, die „shadow-utils46-newxidmap“ enthält .max_user_namespaces = 28633 in der conf-Datei Führen Sie nach Abschluss der Änderung den Befehl sysctl --system aus, damit die Parameter wirksam werden.

sudo groupadd docker     #添加docker用户组
sudo gpasswd -a $USER docker     #将登陆用户加入到docker用户组中
newgrp docker     #更新用户组

Der Standardwert dieses Parameters ist 0, was bedeutet, dass Betriebssystembenutzer keinen Subuid-Speicherplatz haben dürfen. Nachdem der obige Vorgang abgeschlossen ist, verwenden Sie den Befehl sysctl --all --pattern user_namespaces, um die Änderungsergebnisse zu überprüfen.

Empfohlenes Lernen: „

Docker-Video-Tutorial

Das obige ist der detaillierte Inhalt vonBenötigen Sie Root-Berechtigungen, um Docker zu verwenden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn