Изображение локальной особенности в рабочем процессе snakemake на AWS eks с опцией --kubernetes - PullRequest
3 голосов
/ 01 июля 2019

Я пытаюсь использовать Snakemake на AWS EKS, выполняя команды оболочки в контейнерах сингулярности. Если я правильно понял, тогда Snakemake сам по себе запускается kubernetes как контейнер, поэтому я запускаю контейнер Singularity внутри Pod. У меня есть образ Ubuntu в той же папке Snakefile. Как сообщить Singularity путь, по которому хранится изображение?

Я попытался запустить рабочий процесс, указав изображение в DockerHub, и он отлично работает. Однако я не могу заставить его работать с изображениями, хранящимися в моем экземпляре EC2, если я укажу флаг --kubernetes (если я запускаю его без --kubernetes, он отлично работает и с локальными изображениями). Я попытался указать путь к образу на экземпляре EC2, но он не работает.

Мой Snakefile выглядит примерно так:

rule test:
    singularity:
        "ubuntu.simg"
    output:
        "out.txt"
    shell:
        "cat /etc/os-release > {output}"

и я запускаю Snakemake с командой:

snakemake --kubernetes --default-remote-provider S3 --default-remote-prefix S3-bucket-name --use-singularity

Требуемый выходной файл - это файл "out.txt", созданный в указанном контейнере s3 с информацией о выпуске os контейнера "ubuntu.sigm". Фактический результат - неудачная работа. Если я проверяю с

kubectl logs snakejob-c25eaf1f-6ad4-505e-94a0-646543a59d33

Я получаю ошибку:

ERROR  : Image path ubuntu.simg doesn't exist: No such file or directory
ABORT  : Retval = 255

Кто-нибудь, у кого была такая же проблема?

...