Die Lösung stammt von dem im Container angebrachten Pfosten s3. Wie kann ich es dem Host aussetzen?
In diesem Beitrag wird eine Lösung beschrieben glusterFS
, die mehr Berechtigungen für den Container erfordert. Der Docker-Befehl verwendet:
docker run --cap-add SYS_ADMIN --device fuse -v host_mount_dir:container_mount_dir:shared IMAGE COMMAND
Bei einem Fehler wie "Pfad / foo ist auf / foo gemountet, aber kein gemeinsames Mount ...", liegt der Grund dafür, dass der Docker-Daemon in einem anderen Mount-Namespace als systemd ausgeführt wird. Dies ist die Lösung für die Ausführung im selben Namespace:
mkdir -p /etc/systemd/system/docker.service.d/ cat <<EOF > /etc/systemd/system/docker.service.d/clear_mount_propagation_flags.conf [Service] MountFlags=shared EOF
Und starten Sie den Docker-Daemon neu.
Eine Bemerkung ist, dass der Mount auf dem Host sichtbar ist, wenn er in ein Verzeichnis eingebunden ist, das von gebunden ist -v
.