Singularity и Docker являются контейнерами, но они не являются заменой друг другу. Я настоятельно рекомендую прочитать документацию соответствующей версии используемой вами особенности. В последней версии есть хороший раздел на , использующий докер и Singularity вместе .
Если вы используете Singularity v3 или новее, файл, созданный из singularity pull
, будет называться adversarial_policies_latest.sif
, а не adversarial_policies-latest.simg
. Если v2 - единственная версия, доступная в вашем кластере, попросите администраторов установить v3. 2.6.1 - единственный v2 без проблем безопасности, и он больше не получает никаких обновлений.
Что касается singularity run ...
, опции докера -it
предназначены для принудительного запуска интерактивного tty-сеанса, а не для его запуска вфон. singularity exec
и singularity run
оба всегда будут работать на переднем плане, поэтому не существует эквивалентного обязательного параметра для использования с сингулярностью. Передача переменных среды также обрабатывается по-разному. Поскольку контейнер запускается как ваш пользователь, он передает вашу среду ему. Вы можете установить export MUJOCO_KEY=~/.mujoco/mjkey.txt
дальше по сценарию или установить его только для команды: MUJOCO_KEY=~/.mujoco/mjkey.txt singularity run ./adversarial_policies-latest.simg
.