Ich führe einige Dienste in Docker LXC-Containern auf meinem Server aus und beginne, ernsthafte Dinge damit zu tun.
Eine Sache, die mir nicht klar ist, ist, wie Benutzerberechtigungen innerhalb und außerhalb des Containers funktionieren. Wenn ich beispielsweise MySQL in einem Container ausführe und das Datenverzeichnis auf " /dataDocker-Volume" eingestellt habe, wie wirken sich Berechtigungen innerhalb und außerhalb des Containers auf Zugriffsrichtlinien aus?
Offensichtlich besteht die Idee darin, MySQL als eigenen Benutzer im Container (dh mysql:mysql) auszuführen und ihm Lese- und Schreibrechte für dieses Verzeichnis zu erteilen. Ich gehe davon aus, dass dies ziemlich einfach ist, nur chmoddas Verzeichnis usw. Aber wie funktioniert das außerhalb des Containers? Wie verwalte ich die Zugriffssteuerung auf dieses freigegebene Docker-Volume mit der Bezeichnung "Daten"?
Ich versuche speziell, einen nicht privilegierten Benutzer außerhalb des Docker-Containers ausführen zu können, der regelmäßig auf das freigegebene MySQL-Volume zugreift und die Daten sichert.
Wie kann ich Berechtigungen, Benutzer und Gruppen einrichten, damit ein bestimmter Benutzer auf dem Host Dateien und Ordner auf dem freigegebenen Docker-Volume lesen und schreiben kann?
rootkann übrigens auch unprivilegierte Container betreiben . Wichtig ist, dass ein Mapping für die Usern definiert ist.
dockerUnterstützung dafür) kann der LXC-Container als nichtprivilegierter Benutzer ausgeführt werden. Andernfalls kann derrootBenutzer im Container möglicherweise ausbrechen, wenn der Container nicht ordnungsgemäß konfiguriert ist. Das heißt,rootauf dem Host befindet sichrootein Container in einem privilegierten LXC-Container.