for a sientific projet I need to use the singularity project here: https://github.com/Dfam-consortium/TETools
I manage to run it by running the Wrapper script: bash dfam-tetools.sh
then I get a new environment:
(dfam-tetools /beegfs/data/TOOLS/TETools)$
and then I can run all the software I need inside the docker.
But here is the problem, how can I run the same way in a cluster (exemple with slurm
or SGE
? )
I tried to create a bash file such as:
testrun.sh
#!/bin/bash
bash /beegfs/data/TOOLS/TETools/dfam-tetools.sh
RepeatModeler -h
echo "test"
But I only get as output:
/var/spool/slurmd/job2055108/slurm_script: line 3: RepeatModeler: command not found
test
Does someone have already ran a docker in a cluster?
Edit
Since it is necessary to have access to another directory not in the current one, the singularity command should be run instead of the dfam-tetools.sh
script:
singularity run -B /data:/data docker://dfam/tetools:latest RepeatModeler -h
Original accepted answer:
By looking at the documentation and the script dfam-tetools.sh
, you should write:
#!/bin/bash
bash /beegfs/data/TOOLS/TETools/dfam-tetools.sh -- RepeatModeler -h
If you need more commands to be run, I suggest to write them into a bash file and to run this file as:
#!/bin/bash
bash /beegfs/data/TOOLS/TETools/dfam-tetools.sh -- bash myscript.sh
Read carefully the documentation as it is well written.
from chippycentra: Edit: Thanks to frodon the following code worked for me:
singularit y run -B //beegfs/data/user1/://beegfs/data/user1/ docker://dfam/tetools:latest BuildDatabase -name $Sp_name.DB -engine rmblast $ASSEMBLY
where /beegfs/data/user1/
is the path where are found the files
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.