Изображения Docker хранятся в Nexus следующим образом:
BLOB-объекты являются слоями Docker, и они могут (и часто используются) совместно для несколькихДокер изображения.Такое совместное использование слоев является причиной того, почему Docker является эффективным форматом для хранения виртуальных машин.Но это также означает, что вы не можете ограничить доступ к слоям, вы можете ограничить доступ только к манифестам и тегам.Поэтому вам нужно создать привилегию селектора контента, которая разрешает доступ ко всем слоям.
Кроме того, вам необходимо разрешить доступ к /v2/
для входа в докер и /v1/search
для поиска.
Таким образом, вам понадобится такая привилегия выбора контента, которая обеспечивает доступ кВещи, которые нужны всем:
path =~ "/v2/|/v2/blobs/.*|/v2/search/.*"
После этого вы можете выборочно разрешить доступ к манифестам и тегам с помощью таких селекторов контента:
path =^ "/v2/some-docker-image/"
path =^ "/v2/library/ubuntu/"