我的奇点程序输入文件没有被识别(没有找到),我认为这是因为目录没有在奇点内挂载。
我知道这个命令可以设置挂载,但是我不确定要挂载哪些文件夹。
export SINGULARITY_BIND="/somefolder:/somefolder"我如何知道哪些文件夹应该在SINGULARITY_BIND中的":“签名之前和之后?
我已经确定:
SINGULARITY_CACHEDIR=/mnt/scratch/username/software我的奇点被储存在那里。
我的完整剧本:
export SINGULARITY_CACHEDIR=/mnt/scratch/username/software
export SINGULARITY_BIND="/home/username:/mnt/scratch/username"
OUTPUT_DIR="${PWD}/quickstart-output"
INPUT_DIR="${PWD}/quickstart-testdata"
BIN_VERSION="1.4.0"
# Run DeepVariant.
singularity run \
docker://google/deepvariant:"${BIN_VERSION}" \
/opt/deepvariant/bin/run_deepvariant \
--model_type=WGS \ **Replace this string with exactly one of the following [WGS,WES,PACBIO,HYBRID_PACBIO_ILLUMINA]**
--ref="${INPUT_DIR}"/ucsc.hg19.chr20.unittest.fasta \
--reads="${INPUT_DIR}"/NA12878_S1.chr20.10_10p1mb.bam \
--regions "chr20:10,000,000-10,010,000" \
--output_vcf="${OUTPUT_DIR}"/output.vcf.gz \
--output_gvcf="${OUTPUT_DIR}"/output.g.vcf.gz \
--intermediate_results_dir "${OUTPUT_DIR}/intermediate_results_dir" \ **Optional.
--num_shards=1 \ **How many cores the `make_examples` step uses. Change it to the number of CPU cores you have.**我的错误:
singularity.clean.sh: line 23: --ref=/home/username/scratch/username/software/quickstart-testdata/ucsc.hg19.chr20.unittest.fasta: No such file or directory发布于 2022-08-26 15:23:38
如果要绑定挂载当前工作目录,可以使用--bind $(pwd)。如果要绑定挂载主目录,可以使用--bind $HOME (注意,奇点默认挂载主目录)。有关更多信息,请参见奇点文档。
基于您的INPUT_DIR和OUTPUT_DIR,您似乎可以绑定当前工作目录。要做到这一点,请使用--bind $(pwd)。注意,这个参数位于奇异容器的名称之前。
为了安全起见,还可以使用--pwd $(pwd)将容器中的工作目录设置为主机上的当前工作目录。
OUTPUT_DIR="${PWD}/quickstart-output"
INPUT_DIR="${PWD}/quickstart-testdata"
BIN_VERSION="1.4.0"
singularity run --bind $(pwd) --pwd $(pwd) \
docker://google/deepvariant:"${BIN_VERSION}" \
/opt/deepvariant/bin/run_deepvariant \
--model_type=WGS \
--ref="${INPUT_DIR}/ucsc.hg19.chr20.unittest.fasta" \
--reads="${INPUT_DIR}/NA12878_S1.chr20.10_10p1mb.bam" \
--regions "chr20:10,000,000-10,010,000" \
--output_vcf="${OUTPUT_DIR}/output.vcf.gz" \
--output_gvcf="${OUTPUT_DIR}/output.g.vcf.gz" \
--intermediate_results_dir "${OUTPUT_DIR}/intermediate_results_dir" \
--num_shards=1--bind参数的语法是path-on-host:path-in-container。使用--bind path是--bind path:path的缩写,这意味着源路径作为容器中的相同路径挂载。这可能非常有用,因为不需要重写路径并考虑容器的目录。
https://stackoverflow.com/questions/73500205
复制相似问题