Проверьте, кэширован ли контейнер - Singularity - PullRequest
0 голосов
/ 07 апреля 2020

Я ищу способ проверить, кэшируется ли уже контейнер из URL-адреса концентратора. Например, я бы хотел, чтобы команда выполняла что-то вроде:

singularity iscached docker://username/container:tag
True

Есть идеи?

Спасибо!

1 Ответ

0 голосов
/ 21 апреля 2020

Вы можете использовать команду

singularity cache list --verbose | grep 'IMAGE_NAME.sif'

, если этот код возврата равен 0, тогда изображение существует. Вы можете получить код возврата с $?. вам придется изменить имена наподобие docker://user/repo:tag на имена файлов sif, создаваемые сингулярностью.

например:

singularity cache list --verbose | grep 'alpine_latest.sif'
echo $?  # prints 1
singularity pull docker://alpine:latest
singularity cache list --verbose | grep 'alpine_latest.sif'
echo $?  # prints 0
...