我是奇点的新手,正在设置我的第一个容器。我想将容器设置为仅运行一种类型的分析,其中用户可以提供 3 个参数(即文件名)。我想对提供的 3 个文件应用许多命令。我的问题是如何设置容器,以便默认操作(即 %runscript 或类似操作)以某些参数的形式获取用户输入并执行所需的分析。
在用户端,他们会运行类似:
singularity run -B /path/to/files the_container.simg file1 file2 file3
并且可以应用我在容器中拥有的工具套件。我想做的一个玩具例子是这样的:
join file1 file2 | sort | uniq | join file2
wc -l file1
wc -c file2
echo "finished"
推荐的方法是将容器包装在脚本中,以便我要运行的命令只是单独传递给容器吗?理想情况下,我希望用户界面对用户隐藏(或至少不明显),因为想法是使用容器在多个中心创建可重现的结果,我们不希望人们修补参数在容器将提供的每个步骤中。
谢谢大家!