Ничего из вышеперечисленного мне не помогло. Полная рабочая команда:
docker run --rm --entrypoint /bin/sh image_name -c "cat /path/filename" > output_filename
Без кавычек cat
передается без имени файла, поэтому не знает, что показывать. Также рекомендуется удалить контейнер после завершения команды.
Я считаю, что вы можете использовать параметр формата docker inspect
, чтобы делать то, что вы ищете:
MOUNTS=$(docker inspect -f '{{ range.Mounts }}{{.Source }} {{ end }}' $CONTAINER_ID)
Это создаст переменную $MOUNTS
с местоположениями всех монтирований привязки на $CONTAINER_ID
, разделенными пробелами.
Объедините этот вывод с df
запуском с хоста, чтобы определить, сколько места доступно:
for source in $MOUNTS; do df -h $source; done
Это должно вывести разделы, из которых получены все монтирования, и показать доступное пространство на этих разделах.