Решение приходит с поста s3, установленного внутри контейнера. как выставить его на хост?
В этом посте описано решение с использованием glusterFS
, требующее дополнительных разрешений для контейнера. Команда docker использовала:
docker run --cap-add SYS_ADMIN --device fuse -v host_mount_dir:container_mount_dir:shared IMAGE COMMAND
В случае ошибки типа «Path / foo монтируется в / foo, но это не общее монтирование ...», причина в том, что демон docker работает в другом пространстве имен монтирования, чем systemd. Это решение для его запуска в том же пространстве имен:
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
И перезапустите демон докера.
Замечание заключается в том, что монтирование видно на хосте, если оно монтируется в каталог, связанный с -v
.