2

我知道如何运行奇点:

singularity run /mn/sarpanitu/singularity/test/fenics-and-more.img

有没有办法做一行(或更多)来运行上一个命令,然后在奇异运行echo "hi there"?(当然,我会在生产中使用比 hi 更复杂的东西)。完成此操作后,我希望我的奇点仍然完好无损,可以交互使用。

所以类似于以下意图:

singularity run /mn/sarpanitu/singularity/test/fenics-and-more.img -bash-command echo "hi there"

或者

singularity run /mn/sarpanitu/singularity/test/fenics-and-more.img -run-script-at-startup script.sh
4

2 回答 2

2

使用exec, 在容器内执行命令,而不是run. 添加 shell 和脚本作为参数。

singularity exec /mn/sarpanitu/singularity/test/fenics-and-more.img /bin/sh script.sh

此外,在 runscript 部分中添加参数的执行作为默认运行时命令。

%runscript
  exec "$@"
于 2018-07-20T13:38:23.227 回答
0

这与以下问题非常相关:bash script to perform action in a singleity container it opens。解决方案发布在那里,基本上使用该-c选项并产生一个 bash 控制台。

于 2018-08-21T08:28:18.447 回答