Я установил CoreOS, который по умолчанию использует устройство обратной связи размером 100 ГБ, и я очень легко достиг этого предела.
Моя первая идея заключалась в том, чтобы разместить все образы поверх моего NAS с помощью NFS, просто установив его поверх /var/lib/docker
каталог безуспешно.
Теперь я нашел это статья и похоже, что докер каким-либо образом создает блочное устройство поверх любого хранилища, чтобы использовать его снимки CoW, и, вероятно, поэтому мне не удалось сделать первый снимок с простым монтированием общего ресурса NFS поверх каталога изображений. Меня это пугает. Почему бы не использовать чистый NFS с собственными снимками хранилища? Я надеюсь, что этому есть хорошее объяснение. В любом случае мне нужно сделать эту странную вещь. Я новичок в docker и CoreOS и не знаю, как это сделать правильно. Итак, вопрос: Как смонтировать общий ресурс NFS и использовать его для всех образов в CoreOS?
Хорошие новости, вы не первый, кому нужно делать этот. Docker не может использовать прямой NFS, потому что ему нужна поддержка расширенных атрибутов (xttrs), чтобы иметь возможность хранить такие параметры, как возможности ядра, контекст SELinux и т.д. обеспечение необходимых механизмов ядра для использования Docker через дополнительный механизм. Хотя это можно настроить через dm.loopdatasize
вариант, как они явно указывают на странице Docker "Note: This option configures devicemapper loopback, which should not be used in production.".
В конце концов, это сводится к требованиям к базовому хранилищу. Docker просто использует механизмы, предоставляемые ядром, и не творит чудеса самостоятельно.